

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>pyanaconda package &mdash; Anaconda 25.14 documentation</title>
  

  
  

  

  
  
    

  

  
  
    <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  

  

  
    <link rel="top" title="Anaconda 25.14 documentation" href="index.html"/>
        <link rel="up" title="pyanaconda" href="modules.html"/>
        <link rel="next" title="pyanaconda.installclasses package" href="pyanaconda.installclasses.html"/>
        <link rel="prev" title="pyanaconda" href="modules.html"/> 

  
  <script src="_static/js/modernizr.min.js"></script>

</head>

<body class="wy-body-for-nav" role="document">

  <div class="wy-grid-for-nav">

    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search">
          

          
            <a href="index.html" class="icon icon-home"> Anaconda
          

          
          </a>

          
            
            
              <div class="version">
                25.14
              </div>
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
                <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="intro.html">Introduction to Anaconda</a></li>
<li class="toctree-l1"><a class="reference internal" href="release.html">Building a Release</a></li>
<li class="toctree-l1"><a class="reference internal" href="boot-options.html">Anaconda Boot Options</a></li>
<li class="toctree-l1"><a class="reference internal" href="kickstart.html">Anaconda Kickstart Documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="commit-log.html">Rules for commit messages</a></li>
<li class="toctree-l1"><a class="reference internal" href="driverdisc.html">Brief description of DriverDisc version 3</a></li>
<li class="toctree-l1"><a class="reference internal" href="iscsi.html">iSCSI and Anaconda</a></li>
<li class="toctree-l1"><a class="reference internal" href="multipath.html">Multipath and Anaconda</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="modules.html">pyanaconda</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="">pyanaconda package</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#subpackages">Subpackages</a><ul>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.installclasses.html">pyanaconda.installclasses package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.isys.html">pyanaconda.isys package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.packaging.html">pyanaconda.packaging package</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.html">pyanaconda.ui package</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#submodules">Submodules</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.addons">pyanaconda.addons module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.anaconda">pyanaconda.anaconda module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.anaconda_argparse">pyanaconda.anaconda_argparse module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.anaconda_log">pyanaconda.anaconda_log module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.bootloader">pyanaconda.bootloader module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.constants">pyanaconda.constants module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.constants_text">pyanaconda.constants_text module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.desktop">pyanaconda.desktop module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.errors">pyanaconda.errors module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.exception">pyanaconda.exception module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.flags">pyanaconda.flags module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.geoloc">pyanaconda.geoloc module</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#geolocation-backends">Geolocation backends</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.i18n">pyanaconda.i18n module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.ihelp">pyanaconda.ihelp module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.image">pyanaconda.image module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.install">pyanaconda.install module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.installclass">pyanaconda.installclass module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.iutil">pyanaconda.iutil module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.kexec">pyanaconda.kexec module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.keyboard">pyanaconda.keyboard module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.kickstart">pyanaconda.kickstart module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.localization">pyanaconda.localization module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.network">pyanaconda.network module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.nm">pyanaconda.nm module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.ntp">pyanaconda.ntp module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.product">pyanaconda.product module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.progress">pyanaconda.progress module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.pwpolicy">pyanaconda.pwpolicy module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.queuefactory">pyanaconda.queuefactory module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.regexes">pyanaconda.regexes module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.rescue">pyanaconda.rescue module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.safe_dbus">pyanaconda.safe_dbus module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.screensaver">pyanaconda.screensaver module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.simpleconfig">pyanaconda.simpleconfig module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.startup_utils">pyanaconda.startup_utils module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.storage_utils">pyanaconda.storage_utils module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.threads">pyanaconda.threads module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.timezone">pyanaconda.timezone module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.users">pyanaconda.users module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda.vnc">pyanaconda.vnc module</a></li>
<li class="toctree-l3"><a class="reference internal" href="#module-pyanaconda">Module contents</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="testing.html">Testing</a></li>
<li class="toctree-l1"><a class="reference internal" href="tests/modules.html">tests</a></li>
</ul>

            
          
        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
        <a href="index.html">Anaconda</a>
      </nav>


      
      <div class="wy-nav-content">
        <div class="rst-content">
          





<div role="navigation" aria-label="breadcrumbs navigation">
  <ul class="wy-breadcrumbs">
    <li><a href="index.html">Docs</a> &raquo;</li>
      
          <li><a href="modules.html">pyanaconda</a> &raquo;</li>
      
    <li>pyanaconda package</li>
      <li class="wy-breadcrumbs-aside">
        
          
            <a href="_sources/pyanaconda.txt" rel="nofollow"> View page source</a>
          
        
      </li>
  </ul>
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="pyanaconda-package">
<h1>pyanaconda package<a class="headerlink" href="#pyanaconda-package" title="Permalink to this headline">¶</a></h1>
<div class="section" id="subpackages">
<h2>Subpackages<a class="headerlink" href="#subpackages" title="Permalink to this headline">¶</a></h2>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="pyanaconda.installclasses.html">pyanaconda.installclasses package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.installclasses.html#submodules">Submodules</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.installclasses.html#module-pyanaconda.installclasses.fedora">pyanaconda.installclasses.fedora module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.installclasses.html#module-pyanaconda.installclasses.rhel">pyanaconda.installclasses.rhel module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.installclasses.html#module-pyanaconda.installclasses">Module contents</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="pyanaconda.isys.html">pyanaconda.isys package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.isys.html#module-pyanaconda.isys">Module contents</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="pyanaconda.packaging.html">pyanaconda.packaging package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.packaging.html#submodules">Submodules</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.packaging.html#module-pyanaconda.packaging.dnfpayload">pyanaconda.packaging.dnfpayload module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.packaging.html#module-pyanaconda.packaging.livepayload">pyanaconda.packaging.livepayload module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.packaging.html#module-pyanaconda.packaging.rpmostreepayload">pyanaconda.packaging.rpmostreepayload module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.packaging.html#module-pyanaconda.packaging.tarpayload">pyanaconda.packaging.tarpayload module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.packaging.html#module-pyanaconda.packaging">Module contents</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="pyanaconda.ui.html">pyanaconda.ui package</a><ul>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.ui.html#subpackages">Subpackages</a><ul>
<li class="toctree-l3"><a class="reference internal" href="pyanaconda.ui.categories.html">pyanaconda.ui.categories package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#module-pyanaconda.ui.categories.customization">pyanaconda.ui.categories.customization module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#module-pyanaconda.ui.categories.localization">pyanaconda.ui.categories.localization module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#module-pyanaconda.ui.categories.software">pyanaconda.ui.categories.software module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#module-pyanaconda.ui.categories.system">pyanaconda.ui.categories.system module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#module-pyanaconda.ui.categories.user_settings">pyanaconda.ui.categories.user_settings module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.categories.html#module-pyanaconda.ui.categories">Module contents</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="pyanaconda.ui.gui.html">pyanaconda.ui.gui package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.gui.html#subpackages">Subpackages</a><ul>
<li class="toctree-l5"><a class="reference internal" href="pyanaconda.ui.gui.hubs.html">pyanaconda.ui.gui.hubs package</a><ul>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.hubs.html#submodules">Submodules</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.hubs.html#module-pyanaconda.ui.gui.hubs.progress">pyanaconda.ui.gui.hubs.progress module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.hubs.html#module-pyanaconda.ui.gui.hubs.summary">pyanaconda.ui.gui.hubs.summary module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.hubs.html#module-pyanaconda.ui.gui.hubs">Module contents</a></li>
</ul>
</li>
<li class="toctree-l5"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html">pyanaconda.ui.gui.spokes package</a><ul>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#subpackages">Subpackages</a><ul>
<li class="toctree-l7"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html">pyanaconda.ui.gui.spokes.advstorage package</a><ul>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html#submodules">Submodules</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html#module-pyanaconda.ui.gui.spokes.advstorage.dasd">pyanaconda.ui.gui.spokes.advstorage.dasd module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html#module-pyanaconda.ui.gui.spokes.advstorage.fcoe">pyanaconda.ui.gui.spokes.advstorage.fcoe module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html#module-pyanaconda.ui.gui.spokes.advstorage.iscsi">pyanaconda.ui.gui.spokes.advstorage.iscsi module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html#module-pyanaconda.ui.gui.spokes.advstorage.zfcp">pyanaconda.ui.gui.spokes.advstorage.zfcp module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.advstorage.html#module-pyanaconda.ui.gui.spokes.advstorage">Module contents</a></li>
</ul>
</li>
<li class="toctree-l7"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html">pyanaconda.ui.gui.spokes.lib package</a><ul>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#submodules">Submodules</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.accordion">pyanaconda.ui.gui.spokes.lib.accordion module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.cart">pyanaconda.ui.gui.spokes.lib.cart module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.custom_storage_helpers">pyanaconda.ui.gui.spokes.lib.custom_storage_helpers module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.dasdfmt">pyanaconda.ui.gui.spokes.lib.dasdfmt module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.detailederror">pyanaconda.ui.gui.spokes.lib.detailederror module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.entropy_dialog">pyanaconda.ui.gui.spokes.lib.entropy_dialog module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.lang_locale_handler">pyanaconda.ui.gui.spokes.lib.lang_locale_handler module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.passphrase">pyanaconda.ui.gui.spokes.lib.passphrase module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.refresh">pyanaconda.ui.gui.spokes.lib.refresh module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.resize">pyanaconda.ui.gui.spokes.lib.resize module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib.summary">pyanaconda.ui.gui.spokes.lib.summary module</a></li>
<li class="toctree-l8"><a class="reference internal" href="pyanaconda.ui.gui.spokes.lib.html#module-pyanaconda.ui.gui.spokes.lib">Module contents</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#submodules">Submodules</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.custom">pyanaconda.ui.gui.spokes.custom module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.datetime_spoke">pyanaconda.ui.gui.spokes.datetime_spoke module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.filter">pyanaconda.ui.gui.spokes.filter module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.keyboard">pyanaconda.ui.gui.spokes.keyboard module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.langsupport">pyanaconda.ui.gui.spokes.langsupport module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#pyanaconda-ui-gui-spokes-network-module">pyanaconda.ui.gui.spokes.network module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.password">pyanaconda.ui.gui.spokes.password module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.software">pyanaconda.ui.gui.spokes.software module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.source">pyanaconda.ui.gui.spokes.source module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.storage">pyanaconda.ui.gui.spokes.storage module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.user">pyanaconda.ui.gui.spokes.user module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes.welcome">pyanaconda.ui.gui.spokes.welcome module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.gui.spokes.html#module-pyanaconda.ui.gui.spokes">Module contents</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.gui.html#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.gui.html#module-pyanaconda.ui.gui.helpers">pyanaconda.ui.gui.helpers module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.gui.html#module-pyanaconda.ui.gui.utils">pyanaconda.ui.gui.utils module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.gui.html#module-pyanaconda.ui.gui.xkl_wrapper">pyanaconda.ui.gui.xkl_wrapper module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.gui.html#module-pyanaconda.ui.gui">Module contents</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="pyanaconda.ui.lib.html">pyanaconda.ui.lib package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.lib.html#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.lib.html#module-pyanaconda.ui.lib.disks">pyanaconda.ui.lib.disks module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.lib.html#module-pyanaconda.ui.lib.entropy">pyanaconda.ui.lib.entropy module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.lib.html#module-pyanaconda.ui.lib.space">pyanaconda.ui.lib.space module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.lib.html#module-pyanaconda.ui.lib">Module contents</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="pyanaconda.ui.tui.html">pyanaconda.ui.tui package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.tui.html#subpackages">Subpackages</a><ul>
<li class="toctree-l5"><a class="reference internal" href="pyanaconda.ui.tui.hubs.html">pyanaconda.ui.tui.hubs package</a><ul>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.hubs.html#submodules">Submodules</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.hubs.html#module-pyanaconda.ui.tui.hubs.summary">pyanaconda.ui.tui.hubs.summary module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.hubs.html#module-pyanaconda.ui.tui.hubs">Module contents</a></li>
</ul>
</li>
<li class="toctree-l5"><a class="reference internal" href="pyanaconda.ui.tui.simpleline.html">pyanaconda.ui.tui.simpleline package</a><ul>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.simpleline.html#submodules">Submodules</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.simpleline.html#module-pyanaconda.ui.tui.simpleline.base">pyanaconda.ui.tui.simpleline.base module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.simpleline.html#module-pyanaconda.ui.tui.simpleline.widgets">pyanaconda.ui.tui.simpleline.widgets module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.simpleline.html#module-pyanaconda.ui.tui.simpleline">Module contents</a></li>
</ul>
</li>
<li class="toctree-l5"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html">pyanaconda.ui.tui.spokes package</a><ul>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#submodules">Submodules</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.askvnc">pyanaconda.ui.tui.spokes.askvnc module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.langsupport">pyanaconda.ui.tui.spokes.langsupport module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.network">pyanaconda.ui.tui.spokes.network module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.password">pyanaconda.ui.tui.spokes.password module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.progress">pyanaconda.ui.tui.spokes.progress module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.shell_spoke">pyanaconda.ui.tui.spokes.shell_spoke module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.software">pyanaconda.ui.tui.spokes.software module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.source">pyanaconda.ui.tui.spokes.source module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.storage">pyanaconda.ui.tui.spokes.storage module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.time_spoke">pyanaconda.ui.tui.spokes.time_spoke module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.user">pyanaconda.ui.tui.spokes.user module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes.warnings_spoke">pyanaconda.ui.tui.spokes.warnings_spoke module</a></li>
<li class="toctree-l6"><a class="reference internal" href="pyanaconda.ui.tui.spokes.html#module-pyanaconda.ui.tui.spokes">Module contents</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.tui.html#submodules">Submodules</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.tui.html#module-pyanaconda.ui.tui.tuiobject">pyanaconda.ui.tui.tuiobject module</a></li>
<li class="toctree-l4"><a class="reference internal" href="pyanaconda.ui.tui.html#module-pyanaconda.ui.tui">Module contents</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.ui.html#submodules">Submodules</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.ui.html#module-pyanaconda.ui.common">pyanaconda.ui.common module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.ui.html#module-pyanaconda.ui.communication">pyanaconda.ui.communication module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.ui.html#module-pyanaconda.ui.helpers">pyanaconda.ui.helpers module</a></li>
<li class="toctree-l2"><a class="reference internal" href="pyanaconda.ui.html#module-pyanaconda.ui">Module contents</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div class="section" id="submodules">
<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this headline">¶</a></h2>
</div>
<div class="section" id="module-pyanaconda.addons">
<span id="pyanaconda-addons-module"></span><h2>pyanaconda.addons module<a class="headerlink" href="#module-pyanaconda.addons" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.addons.AddonSection">
<em class="property">class </em><code class="descclassname">pyanaconda.addons.</code><code class="descname">AddonSection</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonSection" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.sections.Section</span></code></p>
<dl class="method">
<dt id="pyanaconda.addons.AddonSection.finalize">
<code class="descname">finalize</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonSection.finalize" title="Permalink to this definition">¶</a></dt>
<dd><p>Let addon know no additional data will come.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonSection.handleHeader">
<code class="descname">handleHeader</code><span class="sig-paren">(</span><em>lineno</em>, <em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonSection.handleHeader" title="Permalink to this definition">¶</a></dt>
<dd><p>Process the arguments to the %addon header.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonSection.handleLine">
<code class="descname">handleLine</code><span class="sig-paren">(</span><em>line</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonSection.handleLine" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.addons.AddonSection.sectionOpen">
<code class="descname">sectionOpen</code><em class="property"> = '%addon'</em><a class="headerlink" href="#pyanaconda.addons.AddonSection.sectionOpen" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.addons.AddonRegistry">
<em class="property">class </em><code class="descclassname">pyanaconda.addons.</code><code class="descname">AddonRegistry</code><span class="sig-paren">(</span><em>dictionary</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonRegistry" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>This class represents the ksdata.addons object and
maintains the ids and data structures for loaded
addons.</p>
<p>It acts as a proxy during kickstart save.</p>
<dl class="method">
<dt id="pyanaconda.addons.AddonRegistry.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>users</em>, <em>payload</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonRegistry.execute" title="Permalink to this definition">¶</a></dt>
<dd><p>This method calls execute on all the registered addons.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonRegistry.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>payload</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonRegistry.setup" title="Permalink to this definition">¶</a></dt>
<dd><p>This method calls setup on all the registered addons.</p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.addons.AddonData">
<em class="property">class </em><code class="descclassname">pyanaconda.addons.</code><code class="descname">AddonData</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>This is a common parent class for loading and storing
3rd party data to kickstart. It is instantiated by
kickstart parser and stored as ksdata.addons.&lt;name&gt;
to be used in the user interfaces.</p>
<p>The mandatory method handle_line receives all lines
from the corresponding addon section in kickstart and
the mandatory __str__ implementation is responsible for
returning the proper kickstart text (to be placed into
the %addon section) back.</p>
<p>There is also a mandatory method execute, which should
make all the described changes to the installed system.</p>
<dl class="method">
<dt id="pyanaconda.addons.AddonData.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>users</em>, <em>payload</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonData.execute" title="Permalink to this definition">¶</a></dt>
<dd><p>Make the changes to the underlying system.</p>
<p>This method is called only once in the post-install
setup phase.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonData.finalize">
<code class="descname">finalize</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonData.finalize" title="Permalink to this definition">¶</a></dt>
<dd><p>No additional data will come.</p>
<p>Addon should check if all mandatory attributes were populated.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonData.handle_header">
<code class="descname">handle_header</code><span class="sig-paren">(</span><em>lineno</em>, <em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonData.handle_header" title="Permalink to this definition">¶</a></dt>
<dd><p>Process additional arguments to the %addon line.</p>
<p>This function receives any arguments on the %addon line after the
addon ID. For example, for the line:</p>
<blockquote>
<div>%addon com_example_foo &#8211;argument=&#8217;example&#8217;</div></blockquote>
<p>This function would be called with args=[&#8220;&#8211;argument=&#8217;example&#8217;&#8221;].</p>
<p>By default AddonData.handle_header just preserves the passed
arguments by storing them and adding them to the __str__ output.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonData.handle_line">
<code class="descname">handle_line</code><span class="sig-paren">(</span><em>line</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonData.handle_line" title="Permalink to this definition">¶</a></dt>
<dd><p>Process one kickstart line.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.addons.AddonData.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>payload</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.AddonData.setup" title="Permalink to this definition">¶</a></dt>
<dd><p>Make the changes to the install system.</p>
<p>This method is called before the installation
is started and directly from spokes. It must be possible
to call it multiple times without breaking the environment.</p>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.addons.collect_addon_paths">
<code class="descclassname">pyanaconda.addons.</code><code class="descname">collect_addon_paths</code><span class="sig-paren">(</span><em>toplevel_addon_paths</em>, <em>ui_subdir='gui'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.addons.collect_addon_paths" title="Permalink to this definition">¶</a></dt>
<dd><p>This method looks into the directories present
in toplevel_addon_paths and registers each subdirectory
as a new addon identified by that subdirectory name.</p>
<p>It then registers spokes, categories and data (ks)
paths for the application to use. By default is looks
for spokes and categories in &lt;addon&gt;/gui/ subdirectory
but that can be changed using the ui_subdir argument.</p>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.anaconda">
<span id="pyanaconda-anaconda-module"></span><h2>pyanaconda.anaconda module<a class="headerlink" href="#module-pyanaconda.anaconda" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.anaconda.Anaconda">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda.</code><code class="descname">Anaconda</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.anaconda.Anaconda.bootloader">
<code class="descname">bootloader</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.bootloader" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda.Anaconda.dumpState">
<code class="descname">dumpState</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.dumpState" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda.Anaconda.initInterface">
<code class="descname">initInterface</code><span class="sig-paren">(</span><em>addon_paths=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.initInterface" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda.Anaconda.instClass">
<code class="descname">instClass</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.instClass" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda.Anaconda.intf">
<code class="descname">intf</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.intf" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda.Anaconda.payload">
<code class="descname">payload</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.payload" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda.Anaconda.protected">
<code class="descname">protected</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.protected" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda.Anaconda.storage">
<code class="descname">storage</code><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.storage" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda.Anaconda.writeXdriver">
<code class="descname">writeXdriver</code><span class="sig-paren">(</span><em>root=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda.Anaconda.writeXdriver" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

</div>
<div class="section" id="module-pyanaconda.anaconda_argparse">
<span id="pyanaconda-anaconda-argparse-module"></span><h2>pyanaconda.anaconda_argparse module<a class="headerlink" href="#module-pyanaconda.anaconda_argparse" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.anaconda_argparse.AnacondaArgumentParser">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_argparse.</code><code class="descname">AnacondaArgumentParser</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.AnacondaArgumentParser" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">argparse.ArgumentParser</span></code></a></p>
<p>Subclass of ArgumentParser that also examines boot arguments.</p>
<p>If the &#8220;bootarg_prefix&#8221; keyword argument is set, it&#8217;s assumed that all
bootargs will start with that prefix.</p>
<dl class="docutils">
<dt>&#8220;require_prefix&#8221; is a bool:</dt>
<dd>False: accept the argument with or without the prefix.
True: ignore the argument without the prefix. (default)</dd>
</dl>
<dl class="method">
<dt id="pyanaconda.anaconda_argparse.AnacondaArgumentParser.add_argument">
<code class="descname">add_argument</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.AnacondaArgumentParser.add_argument" title="Permalink to this definition">¶</a></dt>
<dd><p>Add a new option - like ArgumentParser.add_argument.</p>
<p>The long options will be added to the list of boot args, unless
the keyword argument &#8216;bootarg&#8217; is set to False.</p>
<p>Positional arguments that don&#8217;t start with &#8216;-&#8216; are considered extra
boot args to look for.</p>
<p>NOTE: conflict_handler is currently ignored for boot args - they will
always raise ArgumentError if they conflict.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_argparse.AnacondaArgumentParser.parse_args">
<code class="descname">parse_args</code><span class="sig-paren">(</span><em>args=None</em>, <em>boot_cmdline=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.AnacondaArgumentParser.parse_args" title="Permalink to this definition">¶</a></dt>
<dd><p>Like ArgumentParser.parse_args(), but also parses the boot cmdline.
(see parse_boot_cmdline for details on that process.)
Program cmdline arguments will override boot cmdline arguments.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>args</strong> (<em>string or None</em>) &#8211; program command line arguments</li>
<li><strong>boot_cmdline</strong> (<em>string, dict or None</em>) &#8211; the Anaconda boot command line arguments</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">an argparse Namespace instance</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">Namespace</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_argparse.AnacondaArgumentParser.parse_boot_cmdline">
<code class="descname">parse_boot_cmdline</code><span class="sig-paren">(</span><em>boot_cmdline</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.AnacondaArgumentParser.parse_boot_cmdline" title="Permalink to this definition">¶</a></dt>
<dd><p>Parse the boot cmdline and create an appropriate Namespace instance
according to the option definitions set by add_argument.</p>
<p>boot_cmdline can be given as a string (to be parsed by BootArgs), or a
dict (or any object with .items()) of {bootarg:value} pairs.</p>
<p>If boot_cmdline is None, the boot_cmdline data will be whatever BootArgs reads
by default (/proc/cmdline, /run/initramfs/etc/cmdline, /etc/cmdline).</p>
<p>If an option requires a value but the boot arg doesn&#8217;t provide one,
we&#8217;ll quietly not set anything in the Namespace. We also skip any boot options
that were not specified by add_argument as we don&#8217;t care about them
(there will usually be quite a lot of them (rd.*, etc.).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>boot_cmdline</strong> (<em>string, dict or None</em>) &#8211; the Anaconda boot command line arguments</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">an argparse Namespace instance</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">Namespace</td>
</tr>
</tbody>
</table>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.anaconda_argparse.HelpTextParser">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_argparse.</code><code class="descname">HelpTextParser</code><span class="sig-paren">(</span><em>path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.HelpTextParser" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Class to parse help text from file and make it available to option
parser.</p>
<p>Initializer
:param path: The absolute path to the help text file</p>
<dl class="method">
<dt id="pyanaconda.anaconda_argparse.HelpTextParser.help_text">
<code class="descname">help_text</code><span class="sig-paren">(</span><em>option</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.HelpTextParser.help_text" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the help text corresponding to the given command-line option.
If no help text is available, returns the empty string.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>option</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The name of the option</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_argparse.HelpTextParser.read">
<code class="descname">read</code><span class="sig-paren">(</span><em>lines</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.HelpTextParser.read" title="Permalink to this definition">¶</a></dt>
<dd><p>Reads option, help text pairs from a text file.</p>
<p>Each pair is separated from the next by an empty line.
The option comes first, followed by any number of lines of help text.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>lines</strong> &#8211; a sequence of lines of text</td>
</tr>
</tbody>
</table>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.anaconda_argparse.getArgumentParser">
<code class="descclassname">pyanaconda.anaconda_argparse.</code><code class="descname">getArgumentParser</code><span class="sig-paren">(</span><em>version_string</em>, <em>boot_cmdline=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.getArgumentParser" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the anaconda argument parser.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>version_string</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The version string, e.g. 23.19.5.</li>
<li><strong>pyanaconda.flags.BootArgs</strong> &#8211; The boot command line options</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#pyanaconda.anaconda_argparse.AnacondaArgumentParser" title="pyanaconda.anaconda_argparse.AnacondaArgumentParser">AnacondaArgumentParser</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.anaconda_argparse.get_help_width">
<code class="descclassname">pyanaconda.anaconda_argparse.</code><code class="descname">get_help_width</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.get_help_width" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to detect the terminal window width size and use it to
compute optimal help text width. If it can&#8217;t be detected
a default values is returned.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">optimal help text width in number of characters</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)">int</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.anaconda_argparse.name_path_pairs">
<code class="descclassname">pyanaconda.anaconda_argparse.</code><code class="descname">name_path_pairs</code><span class="sig-paren">(</span><em>image_specs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_argparse.name_path_pairs" title="Permalink to this definition">¶</a></dt>
<dd><p>Processes and verifies image file specifications. Generates pairs
of names and paths.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>image_specs</strong> (<em>list of str</em>) &#8211; a list of image specifications</td>
</tr>
</tbody>
</table>
<p>Each image spec in image_specs has format &lt;path&gt;[:&lt;name&gt;] where
&lt;path&gt; is the path to a local file and &lt;name&gt; is an optional
name used to identify the disk in UI. &lt;name&gt; may not contain colons
or slashes.</p>
<p>If no name given in specification, synthesizes name from basename
of path. Since two distinct paths may have the same basename, handles
name collisions by synthesizing a different name for the colliding
name.</p>
<dl class="docutils">
<dt>Raises an exception if:</dt>
<dd><ul class="first last simple">
<li>A path is empty</li>
<li>A path specifies a non-existant file</li>
<li>A path specifies a directory</li>
<li>Duplicate paths are specified</li>
<li>A name contains a &#8220;/&#8221;</li>
</ul>
</dd>
</dl>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.anaconda_log">
<span id="pyanaconda-anaconda-log-module"></span><h2>pyanaconda.anaconda_log module<a class="headerlink" href="#module-pyanaconda.anaconda_log" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.anaconda_log.AnacondaFileHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">AnacondaFileHandler</code><span class="sig-paren">(</span><em>filename</em>, <em>mode='a'</em>, <em>encoding=None</em>, <em>delay=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaFileHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pyanaconda.anaconda_log._AnacondaLogFixer</span></code>, <a class="reference external" href="https://docs.python.org/3/library/logging.handlers.html#logging.FileHandler" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">logging.FileHandler</span></code></a></p>
<p>Open the specified file and use it as the stream for logging.</p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.anaconda_log.AnacondaLog">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">AnacondaLog</code><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.anaconda_log.AnacondaLog.SYSLOG_CFGFILE">
<code class="descname">SYSLOG_CFGFILE</code><em class="property"> = '/etc/rsyslog.conf'</em><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.SYSLOG_CFGFILE" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda_log.AnacondaLog.VIRTIO_PORT">
<code class="descname">VIRTIO_PORT</code><em class="property"> = '/dev/virtio-ports/org.fedoraproject.anaconda.log.0'</em><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.VIRTIO_PORT" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.addFileHandler">
<code class="descname">addFileHandler</code><span class="sig-paren">(</span><em>dest</em>, <em>addToLogger</em>, <em>minLevel=20</em>, <em>fmtStr='%(asctime)s</em>, <em>%(msecs)03d %(levelname)s %(name)s: %(message)s'</em>, <em>autoLevel=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.addFileHandler" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.forwardToSyslog">
<code class="descname">forwardToSyslog</code><span class="sig-paren">(</span><em>logr</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.forwardToSyslog" title="Permalink to this definition">¶</a></dt>
<dd><p>Forward everything that goes in the logger to the syslog daemon.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.restartSyslog">
<code class="descname">restartSyslog</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.restartSyslog" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.setupVirtio">
<code class="descname">setupVirtio</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.setupVirtio" title="Permalink to this definition">¶</a></dt>
<dd><p>Setup virtio rsyslog logging.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.setup_remotelog">
<code class="descname">setup_remotelog</code><span class="sig-paren">(</span><em>host</em>, <em>port</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.setup_remotelog" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.showwarning">
<code class="descname">showwarning</code><span class="sig-paren">(</span><em>message</em>, <em>category</em>, <em>filename</em>, <em>lineno</em>, <em>file=&lt;_io.TextIOWrapper name='&lt;stderr&gt;' mode='w' encoding='UTF-8'&gt;</em>, <em>line=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.showwarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Make sure messages sent through python&#8217;s warnings module get logged.</p>
<p>The warnings mechanism is used by some libraries we use,
notably pykickstart.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaLog.updateRemote">
<code class="descname">updateRemote</code><span class="sig-paren">(</span><em>remote_syslog</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaLog.updateRemote" title="Permalink to this definition">¶</a></dt>
<dd><p>Updates the location of remote rsyslogd to forward to.</p>
<p>Requires updating rsyslogd config and restarting rsyslog</p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.anaconda_log.AnacondaSocketHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">AnacondaSocketHandler</code><span class="sig-paren">(</span><em>host</em>, <em>port</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaSocketHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pyanaconda.anaconda_log._AnacondaLogFixer</span></code>, <a class="reference external" href="https://docs.python.org/3/library/logging.handlers.html#logging.handlers.SocketHandler" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">logging.handlers.SocketHandler</span></code></a></p>
<p>Initializes the handler with a specific host address and port.</p>
<p>When the attribute <em>closeOnError</em> is set to True - if a socket error
occurs, the socket is silently closed and then reopened on the next
logging call.</p>
<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaSocketHandler.makePickle">
<code class="descname">makePickle</code><span class="sig-paren">(</span><em>record</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaSocketHandler.makePickle" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.anaconda_log.AnacondaStreamHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">AnacondaStreamHandler</code><span class="sig-paren">(</span><em>stream=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaStreamHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pyanaconda.anaconda_log._AnacondaLogFixer</span></code>, <a class="reference external" href="https://docs.python.org/3/library/logging.handlers.html#logging.StreamHandler" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">logging.StreamHandler</span></code></a></p>
<p>Initialize the handler.</p>
<p>If stream is not specified, sys.stderr is used.</p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.anaconda_log.AnacondaSyslogHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">AnacondaSyslogHandler</code><span class="sig-paren">(</span><em>address=('localhost'</em>, <em>514)</em>, <em>facility=1</em>, <em>tag=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaSyslogHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pyanaconda.anaconda_log._AnacondaLogFixer</span></code>, <a class="reference external" href="https://docs.python.org/3/library/logging.handlers.html#logging.handlers.SysLogHandler" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">logging.handlers.SysLogHandler</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaSyslogHandler.emit">
<code class="descname">emit</code><span class="sig-paren">(</span><em>record</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaSyslogHandler.emit" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.anaconda_log.AnacondaSyslogHandler.levelMap">
<code class="descname">levelMap</code><em class="property"> = {'ERR': 'error', 'CRIT': 'critical'}</em><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaSyslogHandler.levelMap" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.anaconda_log.AnacondaSyslogHandler.mapPriority">
<code class="descname">mapPriority</code><span class="sig-paren">(</span><em>level</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.AnacondaSyslogHandler.mapPriority" title="Permalink to this definition">¶</a></dt>
<dd><p>Map the priority level to a syslog level</p>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.anaconda_log.autoSetLevel">
<code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">autoSetLevel</code><span class="sig-paren">(</span><em>handler</em>, <em>value</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.autoSetLevel" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.anaconda_log.init">
<code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">init</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.init" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.anaconda_log.setHandlersLevel">
<code class="descclassname">pyanaconda.anaconda_log.</code><code class="descname">setHandlersLevel</code><span class="sig-paren">(</span><em>logr</em>, <em>level</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.anaconda_log.setHandlersLevel" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.bootloader">
<span id="pyanaconda-bootloader-module"></span><h2>pyanaconda.bootloader module<a class="headerlink" href="#module-pyanaconda.bootloader" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.bootloader.Aarch64EFIGRUB">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">Aarch64EFIGRUB</code><a class="headerlink" href="#pyanaconda.bootloader.Aarch64EFIGRUB" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.EFIGRUB" title="pyanaconda.bootloader.EFIGRUB"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.EFIGRUB</span></code></a></p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.Arguments">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">Arguments</code><span class="sig-paren">(</span><em>iterable=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Arguments" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">ordered_set.OrderedSet</span></code></p>
<dl class="method">
<dt id="pyanaconda.bootloader.Arguments.add">
<code class="descname">add</code><span class="sig-paren">(</span><em>key</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Arguments.add" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.Arguments.update">
<code class="descname">update</code><span class="sig-paren">(</span><em>other</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Arguments.update" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.BootLoader">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">BootLoader</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.add_image">
<code class="descname">add_image</code><span class="sig-paren">(</span><em>image</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.add_image" title="Permalink to this definition">¶</a></dt>
<dd><p>Add a BootLoaderImage instance to the image list.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.boot_prefix">
<code class="descname">boot_prefix</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.boot_prefix" title="Permalink to this definition">¶</a></dt>
<dd><p>Prefix, if any, to paths in /boot.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.can_dual_boot">
<code class="descname">can_dual_boot</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.can_dual_boot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.can_update">
<code class="descname">can_update</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.can_update" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.check">
<code class="descname">check</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.check" title="Permalink to this definition">¶</a></dt>
<dd><p>Run additional bootloader checks</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.clear_images">
<code class="descname">clear_images</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.clear_images" title="Permalink to this definition">¶</a></dt>
<dd><p>Empty out the image list.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.config_file">
<code class="descname">config_file</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.config_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.config_file_mode">
<code class="descname">config_file_mode</code><em class="property"> = 384</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.config_file_mode" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.default">
<code class="descname">default</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.default" title="Permalink to this definition">¶</a></dt>
<dd><p>The default image.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.device_description">
<code class="descname">device_description</code><span class="sig-paren">(</span><em>device</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.device_description" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.device_descriptions">
<code class="descname">device_descriptions</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.device_descriptions" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.disk_order">
<code class="descname">disk_order</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.disk_order" title="Permalink to this definition">¶</a></dt>
<dd><p>Potentially partial order for disks.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.disklabel_types">
<code class="descname">disklabel_types</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.disklabel_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.encryption_support">
<code class="descname">encryption_support</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.encryption_support" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.global_preserve_args">
<code class="descname">global_preserve_args</code><em class="property"> = ['speakup_synth', 'apic', 'noapic', 'apm', 'ide', 'noht', 'acpi', 'video', 'pci', 'nodmraid', 'nompath', 'nomodeset', 'noiswmd', 'fips', 'selinux', 'biosdevname', 'ipv6.disable', 'net.ifnames']</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.global_preserve_args" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.has_windows">
<code class="descname">has_windows</code><span class="sig-paren">(</span><em>devices</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.has_windows" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.image_label">
<code class="descname">image_label</code><span class="sig-paren">(</span><em>image</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.image_label" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the appropriate image label for this bootloader.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.image_label_attr">
<code class="descname">image_label_attr</code><em class="property"> = 'label'</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.image_label_attr" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.images">
<code class="descname">images</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.images" title="Permalink to this definition">¶</a></dt>
<dd><p>List of OS images that will be included in the configuration.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.is_valid_stage1_device">
<code class="descname">is_valid_stage1_device</code><span class="sig-paren">(</span><em>device</em>, <em>early=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.is_valid_stage1_device" title="Permalink to this definition">¶</a></dt>
<dd><p>Return True if the device is a valid stage1 target device.</p>
<p>Also collect lists of errors and warnings.</p>
<p>The criteria for being a valid stage1 target device vary from
platform to platform. On some platforms a disk with an msdos
disklabel is a valid stage1 target, while some platforms require
a special device. Some examples of these special devices are EFI
system partitions on EFI machines, PReP boot partitions on
iSeries, and Apple bootstrap partitions on Mac.</p>
<p>The &#8216;early&#8217; keyword argument is a boolean flag indicating whether
or not this check is being performed at a point where the mountpoint
cannot be expected to be set for things like EFI system partitions.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.is_valid_stage2_device">
<code class="descname">is_valid_stage2_device</code><span class="sig-paren">(</span><em>device</em>, <em>linux=True</em>, <em>non_linux=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.is_valid_stage2_device" title="Permalink to this definition">¶</a></dt>
<dd><p>Return True if the device is suitable as a stage2 target device.</p>
<p>Also collect lists of errors and warnings.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.name">
<code class="descname">name</code><em class="property"> = 'Generic Bootloader'</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.packages">
<code class="descname">packages</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.preserve_args">
<code class="descname">preserve_args</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.preserve_args" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.reset">
<code class="descname">reset</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.reset" title="Permalink to this definition">¶</a></dt>
<dd><p>Reset stage1 and stage2 values</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.set_boot_args">
<code class="descname">set_boot_args</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.set_boot_args" title="Permalink to this definition">¶</a></dt>
<dd><p>Set up the boot command line.</p>
<p>Keyword Arguments:</p>
<blockquote>
<div>storage - a blivet.Storage instance</div></blockquote>
<p>All other arguments are expected to have a dracutSetupArgs()
method.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.set_disk_list">
<code class="descname">set_disk_list</code><span class="sig-paren">(</span><em>disks</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.set_disk_list" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.set_preferred_stage1_type">
<code class="descname">set_preferred_stage1_type</code><span class="sig-paren">(</span><em>preferred</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.set_preferred_stage1_type" title="Permalink to this definition">¶</a></dt>
<dd><p>Set a preferred type of stage1 device.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.set_stage1_device">
<code class="descname">set_stage1_device</code><span class="sig-paren">(</span><em>devices</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.set_stage1_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_bootable">
<code class="descname">stage2_bootable</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_bootable" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_description">
<code class="descname">stage2_description</code><em class="property"> = '/boot file system'</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_description" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_device">
<code class="descname">stage2_device</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_format_types">
<code class="descname">stage2_format_types</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_format_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_is_valid_stage1">
<code class="descname">stage2_is_valid_stage1</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_is_valid_stage1" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_max_end">
<code class="descname">stage2_max_end</code><em class="property"> = Size (2 TiB)</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_max_end" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_mountpoints">
<code class="descname">stage2_mountpoints</code><em class="property"> = ['/boot', '/']</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_mountpoints" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_must_be_primary">
<code class="descname">stage2_must_be_primary</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_must_be_primary" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_raid_levels">
<code class="descname">stage2_raid_levels</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_raid_levels" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_raid_member_types">
<code class="descname">stage2_raid_member_types</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_raid_member_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.stage2_raid_metadata">
<code class="descname">stage2_raid_metadata</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.stage2_raid_metadata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.timeout">
<code class="descname">timeout</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.timeout" title="Permalink to this definition">¶</a></dt>
<dd><p>Bootloader timeout in seconds.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.trusted_boot">
<code class="descname">trusted_boot</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.trusted_boot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.update">
<code class="descname">update</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.update" title="Permalink to this definition">¶</a></dt>
<dd><p>Update an existing bootloader configuration.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.BootLoader.update_only">
<code class="descname">update_only</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.update_only" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write">
<code class="descname">write</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write" title="Permalink to this definition">¶</a></dt>
<dd><p>Write the bootloader configuration and install the bootloader.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write_config">
<code class="descname">write_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Write the bootloader configuration.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write_config_console">
<code class="descname">write_config_console</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write_config_console" title="Permalink to this definition">¶</a></dt>
<dd><p>Write console-related configuration lines.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write_config_header">
<code class="descname">write_config_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write_config_header" title="Permalink to this definition">¶</a></dt>
<dd><p>Write global configuration lines.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write_config_images">
<code class="descname">write_config_images</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write_config_images" title="Permalink to this definition">¶</a></dt>
<dd><p>Write image configuration entries.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write_config_password">
<code class="descname">write_config_password</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write_config_password" title="Permalink to this definition">¶</a></dt>
<dd><p>Write password-related configuration lines.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.BootLoader.write_config_post">
<code class="descname">write_config_post</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoader.write_config_post" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="exception">
<dt id="pyanaconda.bootloader.BootLoaderError">
<em class="property">exception </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">BootLoaderError</code><a class="headerlink" href="#pyanaconda.bootloader.BootLoaderError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.BootLoaderImage">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">BootLoaderImage</code><span class="sig-paren">(</span><em>device=None</em>, <em>label=None</em>, <em>short=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.BootLoaderImage" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Base class for bootloader images. Suitable for non-linux OS images.</p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.EFIBase">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">EFIBase</code><a class="headerlink" href="#pyanaconda.bootloader.EFIBase" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.add_efi_boot_target">
<code class="descname">add_efi_boot_target</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.add_efi_boot_target" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.check">
<code class="descname">check</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.check" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIBase.efi_dir_as_efifs_dir">
<code class="descname">efi_dir_as_efifs_dir</code><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.efi_dir_as_efifs_dir" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.efibootmgr">
<code class="descname">efibootmgr</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.efibootmgr" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.remove_efi_boot_target">
<code class="descname">remove_efi_boot_target</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.remove_efi_boot_target" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.update">
<code class="descname">update</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.update" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EFIBase.write">
<code class="descname">write</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EFIBase.write" title="Permalink to this definition">¶</a></dt>
<dd><p>Write the bootloader configuration and install the bootloader.</p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.EFIGRUB">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">EFIGRUB</code><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.EFIBase" title="pyanaconda.bootloader.EFIBase"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.EFIBase</span></code></a>, <a class="reference internal" href="#pyanaconda.bootloader.GRUB2" title="pyanaconda.bootloader.GRUB2"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.GRUB2</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB.can_dual_boot">
<code class="descname">can_dual_boot</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB.can_dual_boot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB.packages">
<code class="descname">packages</code><em class="property"> = ['grub2-efi', 'efibootmgr', 'shim']</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB.stage2_bootable">
<code class="descname">stage2_bootable</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB.stage2_bootable" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB.stage2_is_valid_stage1">
<code class="descname">stage2_is_valid_stage1</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB.stage2_is_valid_stage1" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.EFIGRUB1">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">EFIGRUB1</code><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.EFIBase" title="pyanaconda.bootloader.EFIBase"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.EFIBase</span></code></a>, <a class="reference internal" href="#pyanaconda.bootloader.GRUB" title="pyanaconda.bootloader.GRUB"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.GRUB</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.can_dual_boot">
<code class="descname">can_dual_boot</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.can_dual_boot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.efi_product_path">
<code class="descname">efi_product_path</code><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.efi_product_path" title="Permalink to this definition">¶</a></dt>
<dd><p>The EFI product path.</p>
<p>eg: HD(1,800,64000,faacb4ef-e361-455e-bd97-ca33632550c3)</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.grub_conf_device_line">
<code class="descname">grub_conf_device_line</code><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.grub_conf_device_line" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.packages">
<code class="descname">packages</code><em class="property"> = ['efibootmgr']</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_bootable">
<code class="descname">stage2_bootable</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_bootable" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = ['partition']</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_is_valid_stage1">
<code class="descname">stage2_is_valid_stage1</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_is_valid_stage1" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_max_end_mb">
<code class="descname">stage2_max_end_mb</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_max_end_mb" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_raid_levels">
<code class="descname">stage2_raid_levels</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_raid_levels" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_raid_member_types">
<code class="descname">stage2_raid_member_types</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_raid_member_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EFIGRUB1.stage2_raid_metadata">
<code class="descname">stage2_raid_metadata</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.bootloader.EFIGRUB1.stage2_raid_metadata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.EXTLINUX">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">EXTLINUX</code><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.BootLoader" title="pyanaconda.bootloader.BootLoader"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.BootLoader</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.boot_prefix">
<code class="descname">boot_prefix</code><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.boot_prefix" title="Permalink to this definition">¶</a></dt>
<dd><p>Prefix, if any, to paths in /boot.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.config_file">
<code class="descname">config_file</code><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.config_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.name">
<code class="descname">name</code><em class="property"> = 'EXTLINUX'</em><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.packages">
<code class="descname">packages</code><em class="property"> = ['syslinux-extlinux']</em><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.stage1_device_types">
<code class="descname">stage1_device_types</code><em class="property"> = ['disk']</em><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.stage1_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.stage2_bootable">
<code class="descname">stage2_bootable</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.stage2_bootable" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = ['partition']</em><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.EXTLINUX.stage2_format_types">
<code class="descname">stage2_format_types</code><em class="property"> = ['ext4', 'ext3', 'ext2']</em><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.stage2_format_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.write_config">
<code class="descname">write_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.write_config" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.write_config_console">
<code class="descname">write_config_console</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.write_config_console" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.write_config_header">
<code class="descname">write_config_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.write_config_header" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.write_config_images">
<code class="descname">write_config_images</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.write_config_images" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.write_config_password">
<code class="descname">write_config_password</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.write_config_password" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.EXTLINUX.write_config_post">
<code class="descname">write_config_post</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.EXTLINUX.write_config_post" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.GRUB">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">GRUB</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.BootLoader" title="pyanaconda.bootloader.BootLoader"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.BootLoader</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.can_dual_boot">
<code class="descname">can_dual_boot</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.can_dual_boot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.can_update">
<code class="descname">can_update</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.can_update" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.config_dir">
<code class="descname">config_dir</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.config_dir" title="Permalink to this definition">¶</a></dt>
<dd><p>Full path to configuration directory.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.config_file">
<code class="descname">config_file</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.config_file" title="Permalink to this definition">¶</a></dt>
<dd><p>Full path to configuration file.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.device_map_file">
<code class="descname">device_map_file</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.device_map_file" title="Permalink to this definition">¶</a></dt>
<dd><p>Full path to device.map file.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.grub_conf_device_line">
<code class="descname">grub_conf_device_line</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.grub_conf_device_line" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.grub_config_dir">
<code class="descname">grub_config_dir</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.grub_config_dir" title="Permalink to this definition">¶</a></dt>
<dd><p>Config dir, adjusted for grub&#8217;s view of the world.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.grub_device_name">
<code class="descname">grub_device_name</code><span class="sig-paren">(</span><em>device</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.grub_device_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a grub-friendly representation of device.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.has_serial_console">
<code class="descname">has_serial_console</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.has_serial_console" title="Permalink to this definition">¶</a></dt>
<dd><p>true if the console is a serial console.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.has_windows">
<code class="descname">has_windows</code><span class="sig-paren">(</span><em>devices</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.has_windows" title="Permalink to this definition">¶</a></dt>
<dd><p>Potential boot devices containing non-linux operating systems.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.install_targets">
<code class="descname">install_targets</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.install_targets" title="Permalink to this definition">¶</a></dt>
<dd><p>List of (stage1, stage2) tuples representing install targets.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.is_valid_stage2_device">
<code class="descname">is_valid_stage2_device</code><span class="sig-paren">(</span><em>device</em>, <em>linux=True</em>, <em>non_linux=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.is_valid_stage2_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.name">
<code class="descname">name</code><em class="property"> = 'GRUB'</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.packages">
<code class="descname">packages</code><em class="property"> = ['grub']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.serial_command">
<code class="descname">serial_command</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.serial_command" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.splash_dir">
<code class="descname">splash_dir</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB.splash_dir" title="Permalink to this definition">¶</a></dt>
<dd><p>relative path to splash image directory.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_bootable">
<code class="descname">stage2_bootable</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_bootable" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = ['partition', 'mdarray']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_is_valid_stage1">
<code class="descname">stage2_is_valid_stage1</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_is_valid_stage1" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_must_be_primary">
<code class="descname">stage2_must_be_primary</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_must_be_primary" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_raid_levels">
<code class="descname">stage2_raid_levels</code><em class="property"> = [&lt;blivet.devicelibs.raid.RAID1 object at 0x7fd4f59de668&gt;]</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_raid_levels" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_raid_member_types">
<code class="descname">stage2_raid_member_types</code><em class="property"> = ['partition']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_raid_member_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB.stage2_raid_metadata">
<code class="descname">stage2_raid_metadata</code><em class="property"> = ['0', '0.90', '1.0']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB.stage2_raid_metadata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.update">
<code class="descname">update</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.update" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_config">
<code class="descname">write_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Write bootloader configuration to disk.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_config_console">
<code class="descname">write_config_console</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_config_console" title="Permalink to this definition">¶</a></dt>
<dd><p>Write console-related configuration.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_config_header">
<code class="descname">write_config_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_config_header" title="Permalink to this definition">¶</a></dt>
<dd><p>Write global configuration information.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_config_images">
<code class="descname">write_config_images</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_config_images" title="Permalink to this definition">¶</a></dt>
<dd><p>Write image entries into configuration file.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_config_password">
<code class="descname">write_config_password</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_config_password" title="Permalink to this definition">¶</a></dt>
<dd><p>Write password-related configuration.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_config_post">
<code class="descname">write_config_post</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_config_post" title="Permalink to this definition">¶</a></dt>
<dd><p>Perform additional configuration after writing config file(s).</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB.write_device_map">
<code class="descname">write_device_map</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB.write_device_map" title="Permalink to this definition">¶</a></dt>
<dd><p>Write out a device map containing all supported devices.</p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.GRUB2">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">GRUB2</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB2" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.GRUB" title="pyanaconda.bootloader.GRUB"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.GRUB</span></code></a></p>
<p>GRUBv2</p>
<ul>
<li><dl class="first docutils">
<dt>configuration</dt>
<dd><ul class="first last">
<li><dl class="first docutils">
<dt>password (insecure), password_pbkdf2</dt>
<dd><ul class="first last simple">
<li><a class="reference external" href="http://www.gnu.org/software/grub/manual/grub.html#Invoking-grub_002dmkpasswd_002dpbkdf2">http://www.gnu.org/software/grub/manual/grub.html#Invoking-grub_002dmkpasswd_002dpbkdf2</a></li>
</ul>
</dd>
</dl>
</li>
<li><p class="first">&#8211;users per-entry specifies which users can access, otherwise
entry is unrestricted</p>
</li>
<li><p class="first">/etc/grub/custom.cfg</p>
</li>
</ul>
</dd>
</dl>
</li>
<li><p class="first">how does grub resolve names of md arrays?</p>
</li>
<li><dl class="first docutils">
<dt>disable automatic use of grub-mkconfig?</dt>
<dd><ul class="first last simple">
<li>on upgrades?</li>
</ul>
</dd>
</dl>
</li>
<li><dl class="first docutils">
<dt>BIOS boot partition (GPT)</dt>
<dd><ul class="first last simple">
<li>parted /dev/sda set &lt;partition_number&gt; bios_grub on</li>
<li>can&#8217;t contain a file system</li>
<li>31KiB min, 1MiB recommended</li>
</ul>
</dd>
</dl>
</li>
</ul>
<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.check">
<code class="descname">check</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.check" title="Permalink to this definition">¶</a></dt>
<dd><p>When installing to the mbr of a disk grub2 needs enough space
before the first partition in order to embed its core.img</p>
<p>Until we have a way to ask grub2 what the size is we check to make
sure it starts &gt;= 512K, otherwise return an error.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.defaults_file">
<code class="descname">defaults_file</code><em class="property"> = '/etc/default/grub'</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.defaults_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.grub_device_name">
<code class="descname">grub_device_name</code><span class="sig-paren">(</span><em>device</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.grub_device_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a grub-friendly representation of device.</p>
<p>Disks and partitions use the (hdX,Y) notation, while lvm and
md devices just use their names.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.name">
<code class="descname">name</code><em class="property"> = 'GRUB2'</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.packages">
<code class="descname">packages</code><em class="property"> = ['grub2']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = ['partition', 'mdarray', 'lvmlv']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.stage2_format_types">
<code class="descname">stage2_format_types</code><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.stage2_format_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.stage2_max_end">
<code class="descname">stage2_max_end</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.stage2_max_end" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.stage2_raid_levels">
<code class="descname">stage2_raid_levels</code><em class="property"> = [&lt;blivet.devicelibs.raid.RAID0 object at 0x7fd4f59ffda0&gt;, &lt;blivet.devicelibs.raid.RAID1 object at 0x7fd4f59de668&gt;, &lt;blivet.devicelibs.raid.RAID4 object at 0x7fd4f5a08940&gt;, &lt;blivet.devicelibs.raid.RAID5 object at 0x7fd4f5a08a58&gt;, &lt;blivet.devicelibs.raid.RAID6 object at 0x7fd4f5a5e908&gt;, &lt;blivet.devicelibs.raid.RAID10 object at 0x7fd4f5a5eba8&gt;]</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.stage2_raid_levels" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.stage2_raid_metadata">
<code class="descname">stage2_raid_metadata</code><em class="property"> = ['0', '0.90', '1.0', '1.2']</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.stage2_raid_metadata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.GRUB2.terminal_type">
<code class="descname">terminal_type</code><em class="property"> = 'console'</em><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.terminal_type" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.write">
<code class="descname">write</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.write" title="Permalink to this definition">¶</a></dt>
<dd><p>Write the bootloader configuration and install the bootloader.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.write_config">
<code class="descname">write_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.write_config" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.write_config_console">
<code class="descname">write_config_console</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.write_config_console" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.write_defaults">
<code class="descname">write_defaults</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.write_defaults" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.write_device_map">
<code class="descname">write_device_map</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.write_device_map" title="Permalink to this definition">¶</a></dt>
<dd><p>Write out a device map containing all supported devices.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.GRUB2.write_password_config">
<code class="descname">write_password_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.GRUB2.write_password_config" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.IPSeriesGRUB2">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">IPSeriesGRUB2</code><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesGRUB2" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.GRUB2" title="pyanaconda.bootloader.GRUB2"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.GRUB2</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.bootloader.IPSeriesGRUB2.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesGRUB2.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.IPSeriesGRUB2.stage2_bootable">
<code class="descname">stage2_bootable</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesGRUB2.stage2_bootable" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.IPSeriesGRUB2.terminal_type">
<code class="descname">terminal_type</code><em class="property"> = 'ofconsole'</em><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesGRUB2.terminal_type" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.IPSeriesGRUB2.updateNVRAMBootList">
<code class="descname">updateNVRAMBootList</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesGRUB2.updateNVRAMBootList" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.IPSeriesGRUB2.write_defaults">
<code class="descname">write_defaults</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesGRUB2.write_defaults" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.IPSeriesYaboot">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">IPSeriesYaboot</code><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesYaboot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.Yaboot" title="pyanaconda.bootloader.Yaboot"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.Yaboot</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.bootloader.IPSeriesYaboot.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesYaboot.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.IPSeriesYaboot.prog">
<code class="descname">prog</code><em class="property"> = 'mkofboot'</em><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesYaboot.prog" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.IPSeriesYaboot.updatePowerPCBootList">
<code class="descname">updatePowerPCBootList</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesYaboot.updatePowerPCBootList" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.IPSeriesYaboot.write_config_variant_header">
<code class="descname">write_config_variant_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.IPSeriesYaboot.write_config_variant_header" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.LinuxBootLoaderImage">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">LinuxBootLoaderImage</code><span class="sig-paren">(</span><em>device=None</em>, <em>label=None</em>, <em>short=None</em>, <em>version=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.LinuxBootLoaderImage" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.BootLoaderImage" title="pyanaconda.bootloader.BootLoaderImage"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.BootLoaderImage</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.LinuxBootLoaderImage.initrd">
<code class="descname">initrd</code><a class="headerlink" href="#pyanaconda.bootloader.LinuxBootLoaderImage.initrd" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.LinuxBootLoaderImage.kernel">
<code class="descname">kernel</code><a class="headerlink" href="#pyanaconda.bootloader.LinuxBootLoaderImage.kernel" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.MacEFIGRUB">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">MacEFIGRUB</code><a class="headerlink" href="#pyanaconda.bootloader.MacEFIGRUB" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.EFIGRUB" title="pyanaconda.bootloader.EFIGRUB"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.EFIGRUB</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.bootloader.MacEFIGRUB.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.MacEFIGRUB.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.MacEFIGRUB.is_valid_stage1_device">
<code class="descname">is_valid_stage1_device</code><span class="sig-paren">(</span><em>device</em>, <em>early=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.MacEFIGRUB.is_valid_stage1_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.MacEFIGRUB.mactel_config">
<code class="descname">mactel_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.MacEFIGRUB.mactel_config" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.MacYaboot">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">MacYaboot</code><a class="headerlink" href="#pyanaconda.bootloader.MacYaboot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.Yaboot" title="pyanaconda.bootloader.Yaboot"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.Yaboot</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.MacYaboot.can_dual_boot">
<code class="descname">can_dual_boot</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.bootloader.MacYaboot.can_dual_boot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.MacYaboot.prog">
<code class="descname">prog</code><em class="property"> = 'mkofboot'</em><a class="headerlink" href="#pyanaconda.bootloader.MacYaboot.prog" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.MacYaboot.write_config_variant_header">
<code class="descname">write_config_variant_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.MacYaboot.write_config_variant_header" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.TbootLinuxBootLoaderImage">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">TbootLinuxBootLoaderImage</code><span class="sig-paren">(</span><em>device=None</em>, <em>label=None</em>, <em>short=None</em>, <em>version=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.TbootLinuxBootLoaderImage" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.LinuxBootLoaderImage" title="pyanaconda.bootloader.LinuxBootLoaderImage"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.LinuxBootLoaderImage</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.TbootLinuxBootLoaderImage.args">
<code class="descname">args</code><a class="headerlink" href="#pyanaconda.bootloader.TbootLinuxBootLoaderImage.args" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.TbootLinuxBootLoaderImage.mbargs">
<code class="descname">mbargs</code><a class="headerlink" href="#pyanaconda.bootloader.TbootLinuxBootLoaderImage.mbargs" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.TbootLinuxBootLoaderImage.multiboot">
<code class="descname">multiboot</code><a class="headerlink" href="#pyanaconda.bootloader.TbootLinuxBootLoaderImage.multiboot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.Yaboot">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">Yaboot</code><a class="headerlink" href="#pyanaconda.bootloader.Yaboot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.YabootBase" title="pyanaconda.bootloader.YabootBase"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.YabootBase</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.config_dir">
<code class="descname">config_dir</code><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.config_dir" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.config_file">
<code class="descname">config_file</code><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.config_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.image_label_attr">
<code class="descname">image_label_attr</code><em class="property"> = 'short_label'</em><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.image_label_attr" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.Yaboot.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.name">
<code class="descname">name</code><em class="property"> = 'Yaboot'</em><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.packages">
<code class="descname">packages</code><em class="property"> = ['yaboot']</em><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.prog">
<code class="descname">prog</code><em class="property"> = 'ybin'</em><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.prog" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.stage2_device_raid_levels">
<code class="descname">stage2_device_raid_levels</code><em class="property"> = [&lt;blivet.devicelibs.raid.RAID1 object at 0x7fd4f59de668&gt;]</em><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.stage2_device_raid_levels" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.Yaboot.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = ['partition', 'mdarray']</em><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.Yaboot.write_config">
<code class="descname">write_config</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.write_config" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.Yaboot.write_config_header">
<code class="descname">write_config_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.write_config_header" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.Yaboot.write_config_post">
<code class="descname">write_config_post</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.write_config_post" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.Yaboot.write_config_variant_header">
<code class="descname">write_config_variant_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.Yaboot.write_config_variant_header" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.YabootBase">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">YabootBase</code><a class="headerlink" href="#pyanaconda.bootloader.YabootBase" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.BootLoader" title="pyanaconda.bootloader.BootLoader"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.BootLoader</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.bootloader.YabootBase.write_config_images">
<code class="descname">write_config_images</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.YabootBase.write_config_images" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.YabootBase.write_config_password">
<code class="descname">write_config_password</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.YabootBase.write_config_password" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.ZIPL">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">ZIPL</code><a class="headerlink" href="#pyanaconda.bootloader.ZIPL" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.bootloader.BootLoader" title="pyanaconda.bootloader.BootLoader"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.bootloader.BootLoader</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.boot_dir">
<code class="descname">boot_dir</code><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.boot_dir" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.config_file">
<code class="descname">config_file</code><em class="property"> = '/etc/zipl.conf'</em><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.config_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.image_label_attr">
<code class="descname">image_label_attr</code><em class="property"> = 'short_label'</em><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.image_label_attr" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.ZIPL.install">
<code class="descname">install</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.install" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.name">
<code class="descname">name</code><em class="property"> = 'ZIPL'</em><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.packages">
<code class="descname">packages</code><em class="property"> = ['s390utils-base']</em><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.packages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.preserve_args">
<code class="descname">preserve_args</code><em class="property"> = ['cio_ignore', 'rd.znet', 'rd_ZNET']</em><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.preserve_args" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.stage2_device_types">
<code class="descname">stage2_device_types</code><em class="property"> = ['partition']</em><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.stage2_device_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.bootloader.ZIPL.stage2_format_types">
<code class="descname">stage2_format_types</code><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.stage2_format_types" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.ZIPL.write_config_header">
<code class="descname">write_config_header</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.write_config_header" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.bootloader.ZIPL.write_config_images">
<code class="descname">write_config_images</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.ZIPL.write_config_images" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.bootloader.get_bootloader">
<code class="descclassname">pyanaconda.bootloader.</code><code class="descname">get_bootloader</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.get_bootloader" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.bootloader.parse_serial_opt">
<code class="descclassname">pyanaconda.bootloader.</code><code class="descname">parse_serial_opt</code><span class="sig-paren">(</span><em>arg</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.parse_serial_opt" title="Permalink to this definition">¶</a></dt>
<dd><p>Parse and split serial console options.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p>Documentation/kernel-parameters.txt says:</p>
<blockquote>
<div><p>ttyS&lt;n&gt;[,options]</p>
<blockquote>
<div>Use the specified serial port.  The options are of
the form &#8220;bbbbpnf&#8221;, where &#8220;bbbb&#8221; is the baud rate,
&#8220;p&#8221; is parity (&#8220;n&#8221;, &#8220;o&#8221;, or &#8220;e&#8221;), &#8220;n&#8221; is number of
bits, and &#8220;f&#8221; is flow control (&#8220;r&#8221; for RTS or
omit it).  Default is &#8220;9600n8&#8221;.</div></blockquote>
</div></blockquote>
<p class="last">but note that everything after the baud rate is optional, so these are
all valid: 9600, 19200n, 38400n8, 9600e7r.
Also note that the kernel assumes 1 stop bit; this can&#8217;t be changed.</p>
</div>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.bootloader.serial_opts">
<em class="property">class </em><code class="descclassname">pyanaconda.bootloader.</code><code class="descname">serial_opts</code><a class="headerlink" href="#pyanaconda.bootloader.serial_opts" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.bootloader.writeBootLoader">
<code class="descclassname">pyanaconda.bootloader.</code><code class="descname">writeBootLoader</code><span class="sig-paren">(</span><em>storage</em>, <em>payload</em>, <em>instClass</em>, <em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.writeBootLoader" title="Permalink to this definition">¶</a></dt>
<dd><p>Write bootloader configuration to disk.</p>
<p>When we get here, the bootloader will already have a default linux
image. We only have to add images for the non-default kernels and
adjust the default to reflect whatever the default variant is.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.bootloader.writeBootLoaderFinal">
<code class="descclassname">pyanaconda.bootloader.</code><code class="descname">writeBootLoaderFinal</code><span class="sig-paren">(</span><em>storage</em>, <em>payload</em>, <em>instClass</em>, <em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.writeBootLoaderFinal" title="Permalink to this definition">¶</a></dt>
<dd><p>Do the final write of the bootloader.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.bootloader.writeSysconfigKernel">
<code class="descclassname">pyanaconda.bootloader.</code><code class="descname">writeSysconfigKernel</code><span class="sig-paren">(</span><em>storage</em>, <em>version</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.bootloader.writeSysconfigKernel" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.constants">
<span id="pyanaconda-constants-module"></span><h2>pyanaconda.constants module<a class="headerlink" href="#module-pyanaconda.constants" title="Permalink to this headline">¶</a></h2>
</div>
<div class="section" id="module-pyanaconda.constants_text">
<span id="pyanaconda-constants-text-module"></span><h2>pyanaconda.constants_text module<a class="headerlink" href="#module-pyanaconda.constants_text" title="Permalink to this headline">¶</a></h2>
</div>
<div class="section" id="module-pyanaconda.desktop">
<span id="pyanaconda-desktop-module"></span><h2>pyanaconda.desktop module<a class="headerlink" href="#module-pyanaconda.desktop" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.desktop.Desktop">
<em class="property">class </em><code class="descclassname">pyanaconda.desktop.</code><code class="descname">Desktop</code><a class="headerlink" href="#pyanaconda.desktop.Desktop" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.desktop.Desktop.runlevel">
<code class="descname">runlevel</code><a class="headerlink" href="#pyanaconda.desktop.Desktop.runlevel" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.desktop.Desktop.write">
<code class="descname">write</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.desktop.Desktop.write" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

</div>
<div class="section" id="module-pyanaconda.errors">
<span id="pyanaconda-errors-module"></span><h2>pyanaconda.errors module<a class="headerlink" href="#module-pyanaconda.errors" title="Permalink to this headline">¶</a></h2>
<dl class="exception">
<dt id="pyanaconda.errors.InvalidImageSizeError">
<em class="property">exception </em><code class="descclassname">pyanaconda.errors.</code><code class="descname">InvalidImageSizeError</code><span class="sig-paren">(</span><em>message</em>, <em>filename</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.errors.InvalidImageSizeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.errors.MissingImageError">
<em class="property">exception </em><code class="descclassname">pyanaconda.errors.</code><code class="descname">MissingImageError</code><a class="headerlink" href="#pyanaconda.errors.MissingImageError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.errors.MediaUnmountError">
<em class="property">exception </em><code class="descclassname">pyanaconda.errors.</code><code class="descname">MediaUnmountError</code><span class="sig-paren">(</span><em>device</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.errors.MediaUnmountError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.errors.MediaMountError">
<em class="property">exception </em><code class="descclassname">pyanaconda.errors.</code><code class="descname">MediaMountError</code><span class="sig-paren">(</span><em>device</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.errors.MediaMountError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.errors.ScriptError">
<em class="property">exception </em><code class="descclassname">pyanaconda.errors.</code><code class="descname">ScriptError</code><span class="sig-paren">(</span><em>lineno</em>, <em>details</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.errors.ScriptError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.errors.CmdlineError">
<em class="property">exception </em><code class="descclassname">pyanaconda.errors.</code><code class="descname">CmdlineError</code><a class="headerlink" href="#pyanaconda.errors.CmdlineError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.exception">
<span id="pyanaconda-exception-module"></span><h2>pyanaconda.exception module<a class="headerlink" href="#module-pyanaconda.exception" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.exception.AnacondaExceptionHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.exception.</code><code class="descname">AnacondaExceptionHandler</code><span class="sig-paren">(</span><em>confObj</em>, <em>intfClass</em>, <em>exnClass</em>, <em>tty_num</em>, <em>gui_lock</em>, <em>interactive</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.AnacondaExceptionHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">meh.handler.ExceptionHandler</span></code></p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">See:</th><td class="field-body">python-meh&#8217;s ExceptionHandler</td>
</tr>
<tr class="field-even field"><th class="field-name">Parameters:</th><td class="field-body"><strong>tty_num</strong> &#8211; the number of tty the interface is running on</td>
</tr>
</tbody>
</table>
<dl class="method">
<dt id="pyanaconda.exception.AnacondaExceptionHandler.handleException">
<code class="descname">handleException</code><span class="sig-paren">(</span><em>dump_info</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.AnacondaExceptionHandler.handleException" title="Permalink to this definition">¶</a></dt>
<dd><p>Our own handleException method doing some additional stuff before
calling the original python-meh&#8217;s one.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">See:</th><td class="field-body">python-meh&#8217;s ExceptionHandler.handleException</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.exception.AnacondaExceptionHandler.postWriteHook">
<code class="descname">postWriteHook</code><span class="sig-paren">(</span><em>dump_info</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.AnacondaExceptionHandler.postWriteHook" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.exception.AnacondaExceptionHandler.runDebug">
<code class="descname">runDebug</code><span class="sig-paren">(</span><em>exc_info</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.AnacondaExceptionHandler.runDebug" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.exception.AnacondaReverseExceptionDump">
<em class="property">class </em><code class="descclassname">pyanaconda.exception.</code><code class="descname">AnacondaReverseExceptionDump</code><span class="sig-paren">(</span><em>exc_info</em>, <em>config_obj</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.AnacondaReverseExceptionDump" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">meh.dump.ReverseExceptionDump</span></code></p>
<p>Create a new ExceptionDump instance.  Instance attributes:</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>exc_info</strong> (<em>an instance of the meh.ExceptionInfo class</em>) &#8211; info about the exception provided by Python</li>
<li><strong>config_obj</strong> (<em>an instance of the meh.Config class</em>) &#8211; configuration for python-meh</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.exception.AnacondaReverseExceptionDump.desc">
<code class="descname">desc</code><a class="headerlink" href="#pyanaconda.exception.AnacondaReverseExceptionDump.desc" title="Permalink to this definition">¶</a></dt>
<dd><p>When traceback will be part of the exception message split the
description from traceback. Description is used in name of the
bug in Bugzilla.
This is useful when saving exception in exception handler and
raising this exception elsewhere (subprocess exception).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">Exception description (bug name)</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.exception.initExceptionHandling">
<code class="descclassname">pyanaconda.exception.</code><code class="descname">initExceptionHandling</code><span class="sig-paren">(</span><em>anaconda</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.initExceptionHandling" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.exception.journalctl_callback">
<code class="descclassname">pyanaconda.exception.</code><code class="descname">journalctl_callback</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.journalctl_callback" title="Permalink to this definition">¶</a></dt>
<dd><p>Callback to get logs from journalctl.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.exception.list_addons_callback">
<code class="descclassname">pyanaconda.exception.</code><code class="descname">list_addons_callback</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.list_addons_callback" title="Permalink to this definition">¶</a></dt>
<dd><p>Callback to get info about the addons potentially affecting Anaconda&#8217;s
behaviour.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.exception.lsblk_callback">
<code class="descclassname">pyanaconda.exception.</code><code class="descname">lsblk_callback</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.lsblk_callback" title="Permalink to this definition">¶</a></dt>
<dd><p>Callback to get info about block devices.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.exception.nmcli_dev_list_callback">
<code class="descclassname">pyanaconda.exception.</code><code class="descname">nmcli_dev_list_callback</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.nmcli_dev_list_callback" title="Permalink to this definition">¶</a></dt>
<dd><p>Callback to get info about network devices.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.exception.test_exception_handling">
<code class="descclassname">pyanaconda.exception.</code><code class="descname">test_exception_handling</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.exception.test_exception_handling" title="Permalink to this definition">¶</a></dt>
<dd><p>Function that can be used for testing exception handling in anaconda. It
tries to prepare a worst case scenario designed from bugs seen so far.</p>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.flags">
<span id="pyanaconda-flags-module"></span><h2>pyanaconda.flags module<a class="headerlink" href="#module-pyanaconda.flags" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.flags.BootArgs">
<em class="property">class </em><code class="descclassname">pyanaconda.flags.</code><code class="descname">BootArgs</code><span class="sig-paren">(</span><em>cmdline=None</em>, <em>files=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.BootArgs" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/collections.html#collections.OrderedDict" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">collections.OrderedDict</span></code></a></p>
<p>Hold boot arguments as an OrderedDict.</p>
<p>Create a BootArgs object.
Reads each of the &#8220;files&#8221;, then parses &#8220;cmdline&#8221; if it was provided.</p>
<dl class="method">
<dt id="pyanaconda.flags.BootArgs.getbool">
<code class="descname">getbool</code><span class="sig-paren">(</span><em>arg</em>, <em>default=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.BootArgs.getbool" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the value of the given arg, as a boolean. The rules are:
- &#8220;arg&#8221;, &#8220;arg=val&#8221;: True
- &#8220;noarg&#8221;, &#8220;noarg=val&#8221;, &#8220;arg=[0|off|no]&#8221;: False</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.flags.BootArgs.read">
<code class="descname">read</code><span class="sig-paren">(</span><em>filenames</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.BootArgs.read" title="Permalink to this definition">¶</a></dt>
<dd><p>Read and parse a filename (or a list of filenames).
Files that can&#8217;t be read are silently ignored.
Returns a list of successfully read files.
filenames can contain *, ?, and character ranges expressed with []</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.flags.BootArgs.readstr">
<code class="descname">readstr</code><span class="sig-paren">(</span><em>cmdline</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.BootArgs.readstr" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.flags.Flags">
<em class="property">class </em><code class="descclassname">pyanaconda.flags.</code><code class="descname">Flags</code><span class="sig-paren">(</span><em>read_cmdline=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.Flags" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.flags.Flags.get">
<code class="descname">get</code><span class="sig-paren">(</span><em>attr</em>, <em>val=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.Flags.get" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.flags.Flags.read_cmdline">
<code class="descname">read_cmdline</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.Flags.read_cmdline" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.flags.Flags.set_cmdline_bool">
<code class="descname">set_cmdline_bool</code><span class="sig-paren">(</span><em>flag</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.Flags.set_cmdline_bool" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.flags.can_touch_runtime_system">
<code class="descclassname">pyanaconda.flags.</code><code class="descname">can_touch_runtime_system</code><span class="sig-paren">(</span><em>msg</em>, <em>touch_live=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.flags.can_touch_runtime_system" title="Permalink to this definition">¶</a></dt>
<dd><p>Guard that should be used before doing actions that modify runtime system.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>msg</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; message to be logged in case that runtime system cannot be touched</li>
<li><strong>touch_live</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether to allow touching liveCD installation system</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.geoloc">
<span id="pyanaconda-geoloc-module"></span><h2>pyanaconda.geoloc module<a class="headerlink" href="#module-pyanaconda.geoloc" title="Permalink to this headline">¶</a></h2>
<p>A GeoIP and WiFi location module - location detection based on IP address</p>
<dl class="docutils">
<dt>How to use the geolocation module</dt>
<dd>First call <a class="reference internal" href="#pyanaconda.geoloc.init_geolocation" title="pyanaconda.geoloc.init_geolocation"><code class="xref py py-func docutils literal"><span class="pre">init_geolocation()</span></code></a> - this creates the LocationInfo singleton and
you can also use it to set what geolocation provider should be used.
To actually look up current position, call <a class="reference internal" href="#pyanaconda.geoloc.refresh" title="pyanaconda.geoloc.refresh"><code class="xref py py-func docutils literal"><span class="pre">refresh()</span></code></a> - this will trigger
the actual online geolocation query, which runs in a thread.
After the look-up thread finishes, the results are stored in the singleton
and can be retrieved using the <a class="reference internal" href="#pyanaconda.geoloc.get_territory_code" title="pyanaconda.geoloc.get_territory_code"><code class="xref py py-func docutils literal"><span class="pre">get_territory_code()</span></code></a> and <a class="reference internal" href="#pyanaconda.geoloc.get_result" title="pyanaconda.geoloc.get_result"><code class="xref py py-func docutils literal"><span class="pre">get_result()</span></code></a> methods.
If you call these methods without calling <a class="reference internal" href="#pyanaconda.geoloc.refresh" title="pyanaconda.geoloc.refresh"><code class="xref py py-func docutils literal"><span class="pre">refresh()</span></code></a> first or if the look-up
is currently in progress, both return <code class="docutils literal"><span class="pre">None</span></code>.</dd>
</dl>
<div class="section" id="geolocation-backends">
<h3>Geolocation backends<a class="headerlink" href="#geolocation-backends" title="Permalink to this headline">¶</a></h3>
<dl class="docutils">
<dt>This module currently supports three geolocation backends:</dt>
<dd><ul class="first last simple">
<li>Fedora GeoIP API</li>
<li>Hostip GeoIP</li>
<li>Google WiFi</li>
</ul>
</dd>
<dt>Fedora GeoIP backend</dt>
<dd>This is the default backend. It queries the Fedora GeoIP API for location
data based on current public IP address. The reply is JSON formated and
contains the following fields:
postal_code, latitude, longitude, region, city, country_code, country_name,
time_zone, country_code3, area_code, metro_code, region_name and dma_code
Anaconda currently uses just time_zone and country_code.</dd>
<dt>Hostip backend</dt>
<dd>A GeoIP look-up backend that can be used to determine current country code
from current public IP address. The public IP address is determined
automatically when calling the API.
GeoIP results from Hostip contain the current public IP and an approximate
address. To get this detail location info, use the get_result() method
to get an instance of the LocationResult class, used to wrap the result.</dd>
<dt>Google WiFi backend</dt>
<dd>This backend is probably the most accurate one, at least as long as the
computer has a working WiFi hardware and there are some WiFi APs nearby.
It sends data about nearby APs (ssid, MAC address &amp; signal strength)
acquired from Network Manager to a Google API to get approximate
geographic coordinates. If there are enough AP nearby (such as in a
normal city) it can be very accurate, even up to currently determining
which building is the computer currently in.
But this only returns current geographic coordinates, to get country code
the Nominatim reverse-geocoding API is called to convert the coordinates
to an address, which includes a country code.</dd>
<dt>While having many advantages, this backend also has some severe disadvantages:</dt>
<dd><ul class="first last simple">
<li>needs working WiFi hardware</li>
<li>tells your public IP address &amp; possibly quite precise geographic coordinates
to two external entities (Google and Nominatim)</li>
</ul>
</dd>
</dl>
<p>This could have severe privacy issues and should be carefully considered before
enabling it to be used by default. Also the Google WiFi geolocation API seems to
lack official documentation.</p>
<p>As a result its long-term stability might not be guarantied.</p>
<dl class="docutils">
<dt>Possible issues with GeoIP</dt>
<dd>&#8220;I&#8217;m in Switzerland connected to corporate VPN and anaconda tells me
I&#8217;m in Netherlands.&#8221;
The public IP address is not directly mapped to the physical location
of a computer. So while your world visible IP address is registered to
an IP block assigned to an ISP in Netherlands, it is just the external
address of the Internet gateway of  your corporate network.
As VPNs and proxies can connect two computers anywhere on Earth,
this issue is unfortunately probably unsolvable.</dd>
<dt>Backends that could possibly be used in the future</dt>
<dd><ul class="first last">
<li><p class="first">GPS geolocation</p>
<blockquote>
<div><ul class="simple">
<li>(+) doesn&#8217;t leak your coordinates to a third party
(not entirely true for assisted GPS)</li>
<li>(-) unassisted cold GPS startup can take tens of minutes to acquire a GPS fix</li>
<li>(+) assisted GPS startup (as used in most smartphones) can acquire a fix
in a couple seconds</li>
</ul>
</div></blockquote>
</li>
<li><p class="first">cell tower geolocation</p>
</li>
</ul>
</dd>
</dl>
<dl class="class">
<dt id="pyanaconda.geoloc.Coordinates">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">Coordinates</code><span class="sig-paren">(</span><em>lat=None</em>, <em>lon=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.Coordinates" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>A set of geographic coordinates.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>lat</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#float" title="(in Python v3.5)"><em>float</em></a>) &#8211; WGS84 latitude</li>
<li><strong>lon</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#float" title="(in Python v3.5)"><em>float</em></a>) &#8211; WGS84 longitude</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.geoloc.Coordinates.latitude">
<code class="descname">latitude</code><a class="headerlink" href="#pyanaconda.geoloc.Coordinates.latitude" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.Coordinates.longitude">
<code class="descname">longitude</code><a class="headerlink" href="#pyanaconda.geoloc.Coordinates.longitude" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.FedoraGeoIPProvider">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">FedoraGeoIPProvider</code><a class="headerlink" href="#pyanaconda.geoloc.FedoraGeoIPProvider" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.geoloc.GeolocationBackend" title="pyanaconda.geoloc.GeolocationBackend"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.geoloc.GeolocationBackend</span></code></a></p>
<p>The Fedora GeoIP service provider</p>
<dl class="attribute">
<dt id="pyanaconda.geoloc.FedoraGeoIPProvider.API_URL">
<code class="descname">API_URL</code><em class="property"> = 'https://geoip.fedoraproject.org/city'</em><a class="headerlink" href="#pyanaconda.geoloc.FedoraGeoIPProvider.API_URL" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.FedoraGeoIPProvider.get_name">
<code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.FedoraGeoIPProvider.get_name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.Geocoder">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">Geocoder</code><span class="sig-paren">(</span><em>geocoder='geocoder_nominatim'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.Geocoder" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Provides online geocoding services
(only reverse geocoding at the moment).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>geocoder</strong> &#8211; a constant selecting what geocoder to use</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.geoloc.Geocoder.NOMINATIM_API_URL">
<code class="descname">NOMINATIM_API_URL</code><em class="property"> = 'http://open.mapquestapi.com/nominatim/v1/reverse.php?format=json'</em><a class="headerlink" href="#pyanaconda.geoloc.Geocoder.NOMINATIM_API_URL" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.Geocoder.reverse_geocode_coords">
<code class="descname">reverse_geocode_coords</code><span class="sig-paren">(</span><em>coordinates</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.Geocoder.reverse_geocode_coords" title="Permalink to this definition">¶</a></dt>
<dd><p>Turn geographic coordinates to address</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>coordinates</strong> (<a class="reference internal" href="#pyanaconda.geoloc.Coordinates" title="pyanaconda.geoloc.Coordinates"><em>Coordinates</em></a>) &#8211; Coordinates (geographic coordinates)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">GeocodingResult if the lookup succeeds or None if it fails</td>
</tr>
</tbody>
</table>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.GeocodingResult">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">GeocodingResult</code><span class="sig-paren">(</span><em>coordinates=None</em>, <em>territory_code=None</em>, <em>address=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.GeocodingResult" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>A result from geocoding lookup</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>coordinates</strong> (<a class="reference internal" href="#pyanaconda.geoloc.Coordinates" title="pyanaconda.geoloc.Coordinates"><em>Coordinates</em></a>) &#8211; geographic coordinates</li>
<li><strong>territory_code</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; territory code of the result</li>
<li><strong>address</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; a (street) address string</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.geoloc.GeocodingResult.address">
<code class="descname">address</code><a class="headerlink" href="#pyanaconda.geoloc.GeocodingResult.address" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.GeocodingResult.coordinates">
<code class="descname">coordinates</code><a class="headerlink" href="#pyanaconda.geoloc.GeocodingResult.coordinates" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.GeocodingResult.territory_code">
<code class="descname">territory_code</code><a class="headerlink" href="#pyanaconda.geoloc.GeocodingResult.territory_code" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.GeolocationBackend">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">GeolocationBackend</code><a class="headerlink" href="#pyanaconda.geoloc.GeolocationBackend" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Base class for GeoIP backends.</p>
<dl class="method">
<dt id="pyanaconda.geoloc.GeolocationBackend.get_name">
<code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.GeolocationBackend.get_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Get name of the backend</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">name of the backend</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)">string</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.GeolocationBackend.get_result">
<code class="descname">get_result</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.GeolocationBackend.get_result" title="Permalink to this definition">¶</a></dt>
<dd><p>Get current location</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">geolocation lookup result</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#pyanaconda.geoloc.LocationResult" title="pyanaconda.geoloc.LocationResult">LocationResult</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.GeolocationBackend.refresh">
<code class="descname">refresh</code><span class="sig-paren">(</span><em>force=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.GeolocationBackend.refresh" title="Permalink to this definition">¶</a></dt>
<dd><p>Refresh the geolocation data</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>force</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; do a refresh even if there is a result already available</td>
</tr>
</tbody>
</table>
</dd></dl>

</dd></dl>

<dl class="exception">
<dt id="pyanaconda.geoloc.GeolocationError">
<em class="property">exception </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">GeolocationError</code><a class="headerlink" href="#pyanaconda.geoloc.GeolocationError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Exception class for geolocation related errors</p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.GoogleWiFiLocationProvider">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">GoogleWiFiLocationProvider</code><a class="headerlink" href="#pyanaconda.geoloc.GoogleWiFiLocationProvider" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.geoloc.GeolocationBackend" title="pyanaconda.geoloc.GeolocationBackend"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.geoloc.GeolocationBackend</span></code></a></p>
<p>The Google WiFi location service provider</p>
<dl class="attribute">
<dt id="pyanaconda.geoloc.GoogleWiFiLocationProvider.API_URL">
<code class="descname">API_URL</code><em class="property"> = 'https://maps.googleapis.com/maps/api/browserlocation/json?browser=firefox&amp;sensor=true'</em><a class="headerlink" href="#pyanaconda.geoloc.GoogleWiFiLocationProvider.API_URL" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.GoogleWiFiLocationProvider.get_name">
<code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.GoogleWiFiLocationProvider.get_name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.HostipGeoIPProvider">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">HostipGeoIPProvider</code><a class="headerlink" href="#pyanaconda.geoloc.HostipGeoIPProvider" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.geoloc.GeolocationBackend" title="pyanaconda.geoloc.GeolocationBackend"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.geoloc.GeolocationBackend</span></code></a></p>
<p>The Hostip GeoIP service provider</p>
<dl class="attribute">
<dt id="pyanaconda.geoloc.HostipGeoIPProvider.API_URL">
<code class="descname">API_URL</code><em class="property"> = 'http://api.hostip.info/get_json.php'</em><a class="headerlink" href="#pyanaconda.geoloc.HostipGeoIPProvider.API_URL" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.HostipGeoIPProvider.get_name">
<code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.HostipGeoIPProvider.get_name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.LocationInfo">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">LocationInfo</code><span class="sig-paren">(</span><em>provider_id='provider_fedora_geoip'</em>, <em>refresh_now=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationInfo" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Determines current location based on IP address or
nearby WiFi access points (depending on what backend is used)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>provider_id</strong> &#8211; GeoIP provider id specified by module constant</li>
<li><strong>refresh_now</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; if a GeoIP information refresh should be done
once the class is initialized</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="method">
<dt id="pyanaconda.geoloc.LocationInfo.get_public_ip_address">
<code class="descname">get_public_ip_address</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationInfo.get_public_ip_address" title="Permalink to this definition">¶</a></dt>
<dd><p>A convenience function for getting current public IP</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">current public IP or None if no results are available</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">string or None</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.LocationInfo.get_result">
<code class="descname">get_result</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationInfo.get_result" title="Permalink to this definition">¶</a></dt>
<dd><p>Get result from the provider</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">the result object or return <code class="docutils literal"><span class="pre">None</span></code> if no results are available</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#pyanaconda.geoloc.LocationResult" title="pyanaconda.geoloc.LocationResult"><code class="xref py py-class docutils literal"><span class="pre">LocationResult</span></code></a> or <code class="docutils literal"><span class="pre">None</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.LocationInfo.get_territory_code">
<code class="descname">get_territory_code</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationInfo.get_territory_code" title="Permalink to this definition">¶</a></dt>
<dd><p>A convenience function for getting the current territory code</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">territory code or <code class="docutils literal"><span class="pre">None</span></code> if no results are available</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">string or <code class="docutils literal"><span class="pre">None</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.LocationInfo.get_timezone">
<code class="descname">get_timezone</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationInfo.get_timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>A convenience function for getting the current time zone</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">time zone or None if no results are available</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">string or None</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.LocationInfo.refresh">
<code class="descname">refresh</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationInfo.refresh" title="Permalink to this definition">¶</a></dt>
<dd><p>Refresh location info</p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.LocationResult">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">LocationResult</code><span class="sig-paren">(</span><em>territory_code=None</em>, <em>timezone=None</em>, <em>timezone_source='unknown'</em>, <em>public_ip_address=None</em>, <em>city=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.LocationResult" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Encapsulates the result from GeoIP lookup.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>territory_code</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; the territory code from GeoIP lookup</li>
<li><strong>timezone</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; the time zone from GeoIP lookup</li>
<li><strong>timezone_source</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; specifies source of the time zone string</li>
<li><strong>public_ip_address</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; current public IP address</li>
<li><strong>city</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; current city</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.geoloc.LocationResult.city">
<code class="descname">city</code><a class="headerlink" href="#pyanaconda.geoloc.LocationResult.city" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.LocationResult.public_ip_address">
<code class="descname">public_ip_address</code><a class="headerlink" href="#pyanaconda.geoloc.LocationResult.public_ip_address" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.LocationResult.territory_code">
<code class="descname">territory_code</code><a class="headerlink" href="#pyanaconda.geoloc.LocationResult.territory_code" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.LocationResult.timezone">
<code class="descname">timezone</code><a class="headerlink" href="#pyanaconda.geoloc.LocationResult.timezone" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.WiFiAccessPoint">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">WiFiAccessPoint</code><span class="sig-paren">(</span><em>bssid</em>, <em>ssid=None</em>, <em>rssi=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.WiFiAccessPoint" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Encapsulates information about WiFi access point</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>bssid</strong> &#8211; MAC address of the access point</li>
<li><strong>ssid</strong> &#8211; name of the access point</li>
<li><strong>rssi</strong> &#8211; signal strength</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.geoloc.WiFiAccessPoint.bssid">
<code class="descname">bssid</code><a class="headerlink" href="#pyanaconda.geoloc.WiFiAccessPoint.bssid" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.WiFiAccessPoint.rssi">
<code class="descname">rssi</code><a class="headerlink" href="#pyanaconda.geoloc.WiFiAccessPoint.rssi" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.geoloc.WiFiAccessPoint.ssid">
<code class="descname">ssid</code><a class="headerlink" href="#pyanaconda.geoloc.WiFiAccessPoint.ssid" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.geoloc.WifiScanner">
<em class="property">class </em><code class="descclassname">pyanaconda.geoloc.</code><code class="descname">WifiScanner</code><span class="sig-paren">(</span><em>scan_now=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.WifiScanner" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Uses the Network Manager DBUS API to provide information
about nearby WiFi access points</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>scan_now</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; if an initial scan should be done</td>
</tr>
</tbody>
</table>
<dl class="attribute">
<dt id="pyanaconda.geoloc.WifiScanner.NETWORK_MANAGER_DEVICE_TYPE_WIFI">
<code class="descname">NETWORK_MANAGER_DEVICE_TYPE_WIFI</code><em class="property"> = 2</em><a class="headerlink" href="#pyanaconda.geoloc.WifiScanner.NETWORK_MANAGER_DEVICE_TYPE_WIFI" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.WifiScanner.get_results">
<code class="descname">get_results</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.WifiScanner.get_results" title="Permalink to this definition">¶</a></dt>
<dd><table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">a list of WiFiAccessPoint objects or
an empty list if no APs were found or the scan failed</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.geoloc.WifiScanner.scan">
<code class="descname">scan</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.WifiScanner.scan" title="Permalink to this definition">¶</a></dt>
<dd><p>Scan for WiFi access points</p>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.geoloc.get_provider_id_from_option">
<code class="descclassname">pyanaconda.geoloc.</code><code class="descname">get_provider_id_from_option</code><span class="sig-paren">(</span><em>option_string</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.get_provider_id_from_option" title="Permalink to this definition">¶</a></dt>
<dd><p>Get a valid provider id from a string
This function is used to parse command line
arguments/boot options for the geolocation module.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>option_string</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; option specifying the provider</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">provider id</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.geoloc.get_result">
<code class="descclassname">pyanaconda.geoloc.</code><code class="descname">get_result</code><span class="sig-paren">(</span><em>wait=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.get_result" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the current geolocation result wrapper or <code class="docutils literal"><span class="pre">None</span></code>, if:</p>
<ul>
<li><p class="first">no results were found</p>
</li>
<li><p class="first">the refresh is still in progress</p>
</li>
<li><p class="first">the geolocation module was not activated
(<a class="reference internal" href="#pyanaconda.geoloc.init_geolocation" title="pyanaconda.geoloc.init_geolocation"><code class="xref py py-func docutils literal"><span class="pre">init_geolocation()</span></code></a> &amp; <a class="reference internal" href="#pyanaconda.geoloc.refresh" title="pyanaconda.geoloc.refresh"><code class="xref py py-func docutils literal"><span class="pre">refresh()</span></code></a> were not called)</p>
<blockquote>
<div><ul class="simple">
<li>this is for example the case during image and directory installs</li>
</ul>
</div></blockquote>
</li>
</ul>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>wait</strong> (<em>bool or number</em>) &#8211; <p>wait for lookup in progress to finish</p>
<div class="line-block">
<div class="line"><code class="docutils literal"><span class="pre">False</span></code> - don&#8217;t wait</div>
<div class="line"><code class="docutils literal"><span class="pre">True</span></code> - wait for default period</div>
<div class="line">number - wait for up to number seconds</div>
</div>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><a class="reference internal" href="#pyanaconda.geoloc.LocationResult" title="pyanaconda.geoloc.LocationResult"><code class="xref py py-class docutils literal"><span class="pre">LocationResult</span></code></a> instance or <code class="docutils literal"><span class="pre">None</span></code> if location is unknown</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#pyanaconda.geoloc.LocationResult" title="pyanaconda.geoloc.LocationResult"><code class="xref py py-class docutils literal"><span class="pre">LocationResult</span></code></a> or <code class="docutils literal"><span class="pre">None</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.geoloc.get_territory_code">
<code class="descclassname">pyanaconda.geoloc.</code><code class="descname">get_territory_code</code><span class="sig-paren">(</span><em>wait=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.get_territory_code" title="Permalink to this definition">¶</a></dt>
<dd><p>This function returns the current country code or <code class="docutils literal"><span class="pre">None</span></code>, if:</p>
<ul>
<li><p class="first">no results were found</p>
</li>
<li><p class="first">the lookup is still in progress</p>
</li>
<li><p class="first">the geolocation module was not activated
(<a class="reference internal" href="#pyanaconda.geoloc.init_geolocation" title="pyanaconda.geoloc.init_geolocation"><code class="xref py py-func docutils literal"><span class="pre">init_geolocation()</span></code></a> &amp; <a class="reference internal" href="#pyanaconda.geoloc.refresh" title="pyanaconda.geoloc.refresh"><code class="xref py py-func docutils literal"><span class="pre">refresh()</span></code></a> were not called)</p>
<blockquote>
<div><ul class="simple">
<li>this is for example the case during image and directory installs</li>
</ul>
</div></blockquote>
</li>
</ul>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>wait</strong> (<em>bool or number</em>) &#8211; <p>wait for lookup in progress to finish</p>
<div class="line-block">
<div class="line"><code class="docutils literal"><span class="pre">False</span></code> - don&#8217;t wait</div>
<div class="line"><code class="docutils literal"><span class="pre">True</span></code> - wait for default period</div>
<div class="line">number - wait for up to number seconds</div>
</div>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">current country code or <code class="docutils literal"><span class="pre">None</span></code> if not known</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">string or <code class="docutils literal"><span class="pre">None</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.geoloc.get_timezone">
<code class="descclassname">pyanaconda.geoloc.</code><code class="descname">get_timezone</code><span class="sig-paren">(</span><em>wait=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.get_timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>This function returns the current time zone or <code class="docutils literal"><span class="pre">None</span></code>, if:</p>
<ul class="simple">
<li>no timezone was found</li>
<li>the lookup is still in progress</li>
<li>the geolocation module was not activated
(<a class="reference internal" href="#pyanaconda.geoloc.init_geolocation" title="pyanaconda.geoloc.init_geolocation"><code class="xref py py-func docutils literal"><span class="pre">init_geolocation()</span></code></a> &amp; <a class="reference internal" href="#pyanaconda.geoloc.refresh" title="pyanaconda.geoloc.refresh"><code class="xref py py-func docutils literal"><span class="pre">refresh()</span></code></a> were not called)</li>
</ul>
<blockquote>
<div><ul class="simple">
<li>this is for example the case during image and directory installs</li>
</ul>
</div></blockquote>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>wait</strong> (<em>bool or number</em>) &#8211; <p>wait for lookup in progress to finish</p>
<div class="line-block">
<div class="line"><code class="docutils literal"><span class="pre">False</span></code> - don&#8217;t wait</div>
<div class="line"><code class="docutils literal"><span class="pre">True</span></code> - wait for default period</div>
<div class="line">number - wait for up to number seconds</div>
</div>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">current timezone or <code class="docutils literal"><span class="pre">None</span></code> if not known</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">string or <code class="docutils literal"><span class="pre">None</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.geoloc.init_geolocation">
<code class="descclassname">pyanaconda.geoloc.</code><code class="descname">init_geolocation</code><span class="sig-paren">(</span><em>provider_id='provider_fedora_geoip'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.init_geolocation" title="Permalink to this definition">¶</a></dt>
<dd><p>Prepare the geolocation module for handling geolocation queries.
This method sets-up the GeoLocation instance with the given
geolocation_provider (or using the default one if no provider
is given. Please note that calling this method doesn&#8217;t actually
execute any queries by itself, you need to call refresh()
to do that.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>provider_id</strong> &#8211; specifies what geolocation backend to use</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.geoloc.refresh">
<code class="descclassname">pyanaconda.geoloc.</code><code class="descname">refresh</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.geoloc.refresh" title="Permalink to this definition">¶</a></dt>
<dd><p>Refresh information about current location using the currently specified
geolocation provider.</p>
</dd></dl>

</div>
</div>
<div class="section" id="module-pyanaconda.i18n">
<span id="pyanaconda-i18n-module"></span><h2>pyanaconda.i18n module<a class="headerlink" href="#module-pyanaconda.i18n" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.i18n.N_">
<code class="descclassname">pyanaconda.i18n.</code><code class="descname">N_</code><span class="sig-paren">(</span><em>x</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.i18n.N_" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.i18n.P_">
<code class="descclassname">pyanaconda.i18n.</code><code class="descname">P_</code><span class="sig-paren">(</span><em>x</em>, <em>y</em>, <em>z</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.i18n.P_" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.i18n.C_">
<code class="descclassname">pyanaconda.i18n.</code><code class="descname">C_</code><span class="sig-paren">(</span><em>msgctxt</em>, <em>msgid</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.i18n.C_" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.i18n.CN_">
<code class="descclassname">pyanaconda.i18n.</code><code class="descname">CN_</code><span class="sig-paren">(</span><em>c</em>, <em>x</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.i18n.CN_" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.i18n.CP_">
<code class="descclassname">pyanaconda.i18n.</code><code class="descname">CP_</code><span class="sig-paren">(</span><em>msgctxt</em>, <em>msgid</em>, <em>msgid_plural</em>, <em>n</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.i18n.CP_" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.ihelp">
<span id="pyanaconda-ihelp-module"></span><h2>pyanaconda.ihelp module<a class="headerlink" href="#module-pyanaconda.ihelp" title="Permalink to this headline">¶</a></h2>
<p>Anaconda built-in help module</p>
<dl class="function">
<dt id="pyanaconda.ihelp.get_help_path">
<code class="descclassname">pyanaconda.ihelp.</code><code class="descname">get_help_path</code><span class="sig-paren">(</span><em>help_file</em>, <em>instclass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ihelp.get_help_path" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the full path for the given help file name,
if the help file path does not exist a fallback path is returned.
There are actually two possible fallback paths that might be returned:</p>
<ul class="simple">
<li>first we try to return path to the main page of the installation guide
(if it exists)</li>
<li>if we can&#8217;t find the main page of the installation page, path to a
&#8220;no help found&#8221; placeholder bundled with Anaconda is returned</li>
</ul>
<p>Regarding help l10n, we try to respect the current locale as defined by the
&#8220;LANG&#8221; environmental variable, but fallback to English if localized content
is not available.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>help_file</strong> (<em>str or NoneType</em>) &#8211; help file name</li>
<li><strong>instclass</strong> &#8211; current install class instance</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return str:</th><td class="field-body"><p class="first last">full path to the help file requested or to a placeholder</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ihelp.kill_yelp">
<code class="descclassname">pyanaconda.ihelp.</code><code class="descname">kill_yelp</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ihelp.kill_yelp" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to kill any existing yelp processes</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ihelp.start_yelp">
<code class="descclassname">pyanaconda.ihelp.</code><code class="descname">start_yelp</code><span class="sig-paren">(</span><em>help_path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ihelp.start_yelp" title="Permalink to this definition">¶</a></dt>
<dd><p>Start a new yelp process and make sure to kill any existing ones</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>help_path</strong> (<em>str or NoneType</em>) &#8211; path to the help file yelp should load</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.image">
<span id="pyanaconda-image-module"></span><h2>pyanaconda.image module<a class="headerlink" href="#module-pyanaconda.image" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.image.findFirstIsoImage">
<code class="descclassname">pyanaconda.image.</code><code class="descname">findFirstIsoImage</code><span class="sig-paren">(</span><em>path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.image.findFirstIsoImage" title="Permalink to this definition">¶</a></dt>
<dd><p>Find the first iso image in path
This also supports specifying a specific .iso image</p>
<p>Returns the basename of the image</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.image.mountImage">
<code class="descclassname">pyanaconda.image.</code><code class="descname">mountImage</code><span class="sig-paren">(</span><em>isodir</em>, <em>tree</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.image.mountImage" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.image.opticalInstallMedia">
<code class="descclassname">pyanaconda.image.</code><code class="descname">opticalInstallMedia</code><span class="sig-paren">(</span><em>devicetree</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.image.opticalInstallMedia" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.image.potentialHdisoSources">
<code class="descclassname">pyanaconda.image.</code><code class="descname">potentialHdisoSources</code><span class="sig-paren">(</span><em>devicetree</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.image.potentialHdisoSources" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.image.verifyMedia">
<code class="descclassname">pyanaconda.image.</code><code class="descname">verifyMedia</code><span class="sig-paren">(</span><em>tree</em>, <em>timestamp=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.image.verifyMedia" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.install">
<span id="pyanaconda-install-module"></span><h2>pyanaconda.install module<a class="headerlink" href="#module-pyanaconda.install" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.install.doConfiguration">
<code class="descclassname">pyanaconda.install.</code><code class="descname">doConfiguration</code><span class="sig-paren">(</span><em>storage</em>, <em>payload</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.install.doConfiguration" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.install.doInstall">
<code class="descclassname">pyanaconda.install.</code><code class="descname">doInstall</code><span class="sig-paren">(</span><em>storage</em>, <em>payload</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.install.doInstall" title="Permalink to this definition">¶</a></dt>
<dd><p>Perform an installation.  This method takes the ksdata as prepared by
the UI (the first hub, in graphical mode) and applies it to the disk.
The two main tasks for this are putting filesystems onto disks and
installing packages onto those filesystems.</p>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.installclass">
<span id="pyanaconda-installclass-module"></span><h2>pyanaconda.installclass module<a class="headerlink" href="#module-pyanaconda.installclass" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.installclass.BaseInstallClass">
<em class="property">class </em><code class="descclassname">pyanaconda.installclass.</code><code class="descname">BaseInstallClass</code><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.bootloaderExtraArgs">
<code class="descname">bootloaderExtraArgs</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.bootloaderExtraArgs" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.bootloaderTimeoutDefault">
<code class="descname">bootloaderTimeoutDefault</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.bootloaderTimeoutDefault" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.installclass.BaseInstallClass.configure">
<code class="descname">configure</code><span class="sig-paren">(</span><em>anaconda</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.configure" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.defaultFS">
<code class="descname">defaultFS</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.defaultFS" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.defaultPackageEnvironment">
<code class="descname">defaultPackageEnvironment</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.defaultPackageEnvironment" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.installclass.BaseInstallClass.getBackend">
<code class="descname">getBackend</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.getBackend" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.help_folder">
<code class="descname">help_folder</code><em class="property"> = '/usr/share/anaconda/help'</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.help_folder" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.help_main_page">
<code class="descname">help_main_page</code><em class="property"> = 'Installation_Guide.xml'</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.help_main_page" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.help_placeholder">
<code class="descname">help_placeholder</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.help_placeholder" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.help_placeholder_with_links">
<code class="descname">help_placeholder_with_links</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.help_placeholder_with_links" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.hidden">
<code class="descname">hidden</code><em class="property"> = False</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.hidden" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.ignoredPackages">
<code class="descname">ignoredPackages</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.ignoredPackages" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.installUpdates">
<code class="descname">installUpdates</code><em class="property"> = True</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.installUpdates" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.l10n_domain">
<code class="descname">l10n_domain</code><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.l10n_domain" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.name">
<code class="descname">name</code><em class="property"> = 'base'</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.installclass.BaseInstallClass.setDefaultPartitioning">
<code class="descname">setDefaultPartitioning</code><span class="sig-paren">(</span><em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.setDefaultPartitioning" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.installclass.BaseInstallClass.setNetworkOnbootDefault">
<code class="descname">setNetworkOnbootDefault</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.setNetworkOnbootDefault" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.installclass.BaseInstallClass.setPackageSelection">
<code class="descname">setPackageSelection</code><span class="sig-paren">(</span><em>anaconda</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.setPackageSelection" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.installclass.BaseInstallClass.stylesheet">
<code class="descname">stylesheet</code><em class="property"> = None</em><a class="headerlink" href="#pyanaconda.installclass.BaseInstallClass.stylesheet" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.installclass.DefaultInstall">
<em class="property">class </em><code class="descclassname">pyanaconda.installclass.</code><code class="descname">DefaultInstall</code><a class="headerlink" href="#pyanaconda.installclass.DefaultInstall" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">fedora.FedoraBaseInstallClass</span></code></p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.installclass.availableClasses">
<code class="descclassname">pyanaconda.installclass.</code><code class="descname">availableClasses</code><span class="sig-paren">(</span><em>showHidden=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.availableClasses" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.installclass.getBaseInstallClass">
<code class="descclassname">pyanaconda.installclass.</code><code class="descname">getBaseInstallClass</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.installclass.getBaseInstallClass" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.iutil">
<span id="pyanaconda-iutil-module"></span><h2>pyanaconda.iutil module<a class="headerlink" href="#module-pyanaconda.iutil" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.iutil.DataHolder">
<em class="property">class </em><code class="descclassname">pyanaconda.iutil.</code><code class="descname">DataHolder</code><span class="sig-paren">(</span><em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.DataHolder" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#dict" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">dict</span></code></a></p>
<p>A dict that lets you also access keys using dot notation.</p>
<p>kwargs are set as keys for the dict.</p>
<dl class="method">
<dt id="pyanaconda.iutil.DataHolder.copy">
<code class="descname">copy</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.DataHolder.copy" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="exception">
<dt id="pyanaconda.iutil.ExitError">
<em class="property">exception </em><code class="descclassname">pyanaconda.iutil.</code><code class="descname">ExitError</code><a class="headerlink" href="#pyanaconda.iutil.ExitError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#RuntimeError" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">RuntimeError</span></code></a></p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.iutil.ProxyString">
<em class="property">class </em><code class="descclassname">pyanaconda.iutil.</code><code class="descname">ProxyString</code><span class="sig-paren">(</span><em>url=None</em>, <em>protocol='http://'</em>, <em>host=None</em>, <em>port='3128'</em>, <em>username=None</em>, <em>password=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.ProxyString" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Handle a proxy url</p>
<p>Initialize with either url
([protocol://][username[:password]&#64;]host[:port]) or pass host and
optionally:</p>
<p>protocol    http, https, ftp
host        hostname without protocol
port        port number (defaults to 3128)
username    username
password    password</p>
<p>The str() of the object is the full proxy url</p>
<p>ProxyString.url is the full url including username:password&#64;
ProxyString.noauth_url is the url without username:password&#64;</p>
<dl class="attribute">
<dt id="pyanaconda.iutil.ProxyString.dict">
<code class="descname">dict</code><a class="headerlink" href="#pyanaconda.iutil.ProxyString.dict" title="Permalink to this definition">¶</a></dt>
<dd><p>return a dict of all the elements of the proxy string
url, noauth_url, protocol, host, port, username, password</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.iutil.ProxyString.parse_components">
<code class="descname">parse_components</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.ProxyString.parse_components" title="Permalink to this definition">¶</a></dt>
<dd><p>Parse the components of a proxy url into url and noauth_url</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.iutil.ProxyString.parse_url">
<code class="descname">parse_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.ProxyString.parse_url" title="Permalink to this definition">¶</a></dt>
<dd><p>Parse the proxy url into its component pieces</p>
</dd></dl>

</dd></dl>

<dl class="exception">
<dt id="pyanaconda.iutil.ProxyStringError">
<em class="property">exception </em><code class="descclassname">pyanaconda.iutil.</code><code class="descname">ProxyStringError</code><a class="headerlink" href="#pyanaconda.iutil.ProxyStringError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.add_po_path">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">add_po_path</code><span class="sig-paren">(</span><em>directory</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.add_po_path" title="Permalink to this definition">¶</a></dt>
<dd><p>Looks to see what translations are under a given path and tells
the gettext module to use that path as the base dir</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.augmentEnv">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">augmentEnv</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.augmentEnv" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.chown_dir_tree">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">chown_dir_tree</code><span class="sig-paren">(</span><em>root</em>, <em>uid</em>, <em>gid</em>, <em>from_uid_only=None</em>, <em>from_gid_only=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.chown_dir_tree" title="Permalink to this definition">¶</a></dt>
<dd><p>Change owner (uid and gid) of the files and directories under the given
directory tree (recursively).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>root</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; root of the directory tree that should be chown&#8217;ed</li>
<li><strong>uid</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; UID that should be set as the owner</li>
<li><strong>gid</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; GID that should be set as the owner</li>
<li><strong>from_uid_only</strong> (<em>int or None</em>) &#8211; if given, the owner is changed only for the files and
directories owned by that UID</li>
<li><strong>from_gid_only</strong> (<em>int or None</em>) &#8211; if given, the owner is changed only for the files and
directories owned by that GID</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.cmp_obj_attrs">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">cmp_obj_attrs</code><span class="sig-paren">(</span><em>obj1</em>, <em>obj2</em>, <em>attr_list</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.cmp_obj_attrs" title="Permalink to this definition">¶</a></dt>
<dd><p>Compare attributes of 2 objects for changes</p>
<p>Missing attrs are considered a mismatch</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>obj1</strong> (<em>Any object</em>) &#8211; First object to compare</li>
<li><strong>obj2</strong> (<em>Any object</em>) &#8211; Second object to compare</li>
<li><strong>attr_list</strong> (<em>list or tuple of strings</em>) &#8211; List of attributes to compare</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if the attrs all match</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.dir_tree_map">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">dir_tree_map</code><span class="sig-paren">(</span><em>root</em>, <em>func</em>, <em>files=True</em>, <em>dirs=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.dir_tree_map" title="Permalink to this definition">¶</a></dt>
<dd><p>Apply the given function to all files and directories in the directory tree
under the given root directory.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>root</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; root of the directory tree the function should be mapped to</li>
<li><strong>func</strong> (<em>path -&gt; None</em>) &#8211; a function taking the directory/file path</li>
<li><strong>files</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether to apply the function to the files in the dir. tree</li>
<li><strong>dirs</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether to apply the function to the directories in the dir. tree</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>TODO: allow using globs and thus more trees?</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.disable_service">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">disable_service</code><span class="sig-paren">(</span><em>service</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.disable_service" title="Permalink to this definition">¶</a></dt>
<dd><p>Disable a systemd service in the sysroot</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.dracut_eject">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">dracut_eject</code><span class="sig-paren">(</span><em>device</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.dracut_eject" title="Permalink to this definition">¶</a></dt>
<dd><p>Use dracut shutdown hook to eject media after the system is shutdown.
This is needed because we are running from the squashfs.img on the media
so ejecting too early will crash the installer.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.enable_service">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">enable_service</code><span class="sig-paren">(</span><em>service</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.enable_service" title="Permalink to this definition">¶</a></dt>
<dd><p>Enable a systemd service in the sysroot</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.ensure_str">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">ensure_str</code><span class="sig-paren">(</span><em>str_or_bytes</em>, <em>keep_none=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.ensure_str" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a str instance for given string or <code class="docutils literal"><span class="pre">None</span></code> if requested to keep it.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>str_or_bytes</strong> (<em>str or bytes</em>) &#8211; string to be kept or converted to str type</li>
<li><strong>keep_none</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether to keep None as it is or raise ValueError if
<code class="docutils literal"><span class="pre">None</span></code> is passed</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#ValueError" title="(in Python v3.5)">ValueError</a>:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body"><p class="first last">if applied on an object not being of type bytes nor str
(nor NoneType if <code class="docutils literal"><span class="pre">keep_none</span></code> is <code class="docutils literal"><span class="pre">False</span></code>)</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.execConsole">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">execConsole</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.execConsole" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.execInSysroot">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">execInSysroot</code><span class="sig-paren">(</span><em>command</em>, <em>argv</em>, <em>stdin=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.execInSysroot" title="Permalink to this definition">¶</a></dt>
<dd><p>Run an external program in the target root.
:param command: The command to run
:param argv: The argument list
:param stdin: The file object to read stdin from.
:return: The return code of the command</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.execReadlines">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">execReadlines</code><span class="sig-paren">(</span><em>command</em>, <em>argv</em>, <em>stdin=None</em>, <em>root='/'</em>, <em>env_prune=None</em>, <em>filter_stderr=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.execReadlines" title="Permalink to this definition">¶</a></dt>
<dd><p>Execute an external command and return the line output of the command
in real-time.</p>
<p>This method assumes that there is a reasonably low delay between the
end of output and the process exiting. If the child process closes
stdout and then keeps on truckin&#8217; there will be problems.</p>
<dl class="docutils">
<dt>NOTE/WARNING: UnicodeDecodeError will be raised if the output of the</dt>
<dd>external command can&#8217;t be decoded as UTF-8.</dd>
</dl>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>command</strong> &#8211; The command to run</li>
<li><strong>argv</strong> &#8211; The argument list</li>
<li><strong>stdin</strong> &#8211; The file object to read stdin from.</li>
<li><strong>stdout</strong> &#8211; Optional file object to redirect stdout and stderr to.</li>
<li><strong>root</strong> &#8211; The directory to chroot to before running command.</li>
<li><strong>env_prune</strong> &#8211; environment variable to remove before execution</li>
<li><strong>filter_stderr</strong> &#8211; Whether stderr should be excluded from the returned output</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>Output from the file is not logged to program.log
This returns an iterator with the lines from the command until it has finished</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.execWithCapture">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">execWithCapture</code><span class="sig-paren">(</span><em>command</em>, <em>argv</em>, <em>stdin=None</em>, <em>root='/'</em>, <em>log_output=True</em>, <em>filter_stderr=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.execWithCapture" title="Permalink to this definition">¶</a></dt>
<dd><p>Run an external program and capture standard out and err.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>command</strong> &#8211; The command to run</li>
<li><strong>argv</strong> &#8211; The argument list</li>
<li><strong>stdin</strong> &#8211; The file object to read stdin from.</li>
<li><strong>root</strong> &#8211; The directory to chroot to before running command.</li>
<li><strong>log_output</strong> &#8211; Whether to log the output of command</li>
<li><strong>filter_stderr</strong> &#8211; Whether stderr should be excluded from the returned output</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The output of the command</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.execWithCaptureBinary">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">execWithCaptureBinary</code><span class="sig-paren">(</span><em>command</em>, <em>argv</em>, <em>stdin=None</em>, <em>root='/'</em>, <em>log_output=False</em>, <em>filter_stderr=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.execWithCaptureBinary" title="Permalink to this definition">¶</a></dt>
<dd><p>Run an external program and capture standard out and err as binary data.
The binary data output is not logged by default but logging can be enabled.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>command</strong> &#8211; The command to run</li>
<li><strong>argv</strong> &#8211; The argument list</li>
<li><strong>stdin</strong> &#8211; The file object to read stdin from.</li>
<li><strong>root</strong> &#8211; The directory to chroot to before running command.</li>
<li><strong>log_output</strong> &#8211; Whether to log the binary output of the command</li>
<li><strong>filter_stderr</strong> &#8211; Whether stderr should be excluded from the returned output</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The output of the command</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.execWithRedirect">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">execWithRedirect</code><span class="sig-paren">(</span><em>command</em>, <em>argv</em>, <em>stdin=None</em>, <em>stdout=None</em>, <em>root='/'</em>, <em>env_prune=None</em>, <em>log_output=True</em>, <em>binary_output=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.execWithRedirect" title="Permalink to this definition">¶</a></dt>
<dd><p>Run an external program and redirect the output to a file.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>command</strong> &#8211; The command to run</li>
<li><strong>argv</strong> &#8211; The argument list</li>
<li><strong>stdin</strong> &#8211; The file object to read stdin from.</li>
<li><strong>stdout</strong> &#8211; Optional file object to redirect stdout and stderr to.</li>
<li><strong>root</strong> &#8211; The directory to chroot to before running command.</li>
<li><strong>env_prune</strong> &#8211; environment variable to remove before execution</li>
<li><strong>log_output</strong> &#8211; whether to log the output of command</li>
<li><strong>binary_output</strong> &#8211; whether to treat the output of command as binary data</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The return code of the command</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.getDirSize">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">getDirSize</code><span class="sig-paren">(</span><em>directory</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.getDirSize" title="Permalink to this definition">¶</a></dt>
<dd><p>Get the size of a directory and all its subdirectories.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>dir</strong> &#8211; The name of the directory to find the size of.</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">The size of the directory in kilobytes.</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.getSysroot">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">getSysroot</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.getSysroot" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the path to the target OS installation.</p>
<p>For ordinary package-based installations, this is the same as the
target root.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.getTargetPhysicalRoot">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">getTargetPhysicalRoot</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.getTargetPhysicalRoot" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the path to the &#8220;physical&#8221; storage root, traditionally /mnt/sysimage.</p>
<p>This may be distinct from the sysroot, which could be a
chroot-type subdirectory of the physical root.  This is used for
example by all OSTree-based installations.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.get_active_console">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">get_active_console</code><span class="sig-paren">(</span><em>dev='console'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.get_active_console" title="Permalink to this definition">¶</a></dt>
<dd><p>Find the active console device.</p>
<p>Some tty devices (/dev/console, /dev/tty0) aren&#8217;t actual devices;
they just redirect input and output to the real console device(s).</p>
<p>These &#8216;fake&#8217; ttys have an &#8216;active&#8217; sysfs attribute, which lists the real
console device(s). (If there&#8217;s more than one, the <em>last</em> one in the list
is the primary console.)</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.get_mount_paths">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">get_mount_paths</code><span class="sig-paren">(</span><em>devnode</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.get_mount_paths" title="Permalink to this definition">¶</a></dt>
<dd><p>given a device node, return a list of all active mountpoints.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.get_platform_groupid">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">get_platform_groupid</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.get_platform_groupid" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a platform group id string</p>
<p>This runs systemd-detect-virt and if the result is not &#8216;none&#8217; it
prefixes the lower case result with &#8220;platform-&#8221; for use as a group id.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">Empty string or a group id for the detected platform</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.getdeepattr">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">getdeepattr</code><span class="sig-paren">(</span><em>obj</em>, <em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.getdeepattr" title="Permalink to this definition">¶</a></dt>
<dd><p>This behaves as the standard getattr, but supports
composite (containing dots) attribute names.</p>
<p>As an example:</p>
<div class="highlight-python"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">os</span>
<span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">os.path</span> <span class="kn">import</span> <span class="n">split</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">getdeepattr</span><span class="p">(</span><span class="n">os</span><span class="p">,</span> <span class="s2">&quot;path.split&quot;</span><span class="p">)</span> <span class="o">==</span> <span class="n">split</span>
<span class="go">True</span>
</pre></div>
</div>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.have_word_match">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">have_word_match</code><span class="sig-paren">(</span><em>str1</em>, <em>str2</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.have_word_match" title="Permalink to this definition">¶</a></dt>
<dd><p>Tells if all words from str1 exist in str2 or not.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.id_generator">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">id_generator</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.id_generator" title="Permalink to this definition">¶</a></dt>
<dd><p>Id numbers generator.
Generating numbers from 0 to X and increments after every call.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">Generator which gives you unique numbers.</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.ipmi_abort">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">ipmi_abort</code><span class="sig-paren">(</span><em>scripts=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.ipmi_abort" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.ipmi_report">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">ipmi_report</code><span class="sig-paren">(</span><em>event</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.ipmi_report" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.isConsoleOnVirtualTerminal">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">isConsoleOnVirtualTerminal</code><span class="sig-paren">(</span><em>dev='console'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.isConsoleOnVirtualTerminal" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.is_unsupported_hw">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">is_unsupported_hw</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.is_unsupported_hw" title="Permalink to this definition">¶</a></dt>
<dd><p>Check to see if the hardware is supported or not.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><code class="docutils literal"><span class="pre">True</span></code> if this is unsupported hardware, <code class="docutils literal"><span class="pre">False</span></code> otherwise</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.lowerASCII">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">lowerASCII</code><span class="sig-paren">(</span><em>s</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.lowerASCII" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert a string to lowercase using only ASCII character definitions.</p>
<p>The returned string will contain only ASCII characters. This function is
locale-independent.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.mkdirChain">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">mkdirChain</code><span class="sig-paren">(</span><em>directory</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.mkdirChain" title="Permalink to this definition">¶</a></dt>
<dd><p>Make a directory and all of its parents. Don&#8217;t fail if part or
of it already exists.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>directory</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The directory path to create</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.open_with_perm">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">open_with_perm</code><span class="sig-paren">(</span><em>path</em>, <em>mode='r'</em>, <em>perm=511</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.open_with_perm" title="Permalink to this definition">¶</a></dt>
<dd><p>Open a file with the given permission bits.</p>
<p>This is more or less the same as using os.open(path, flags, perm), but
with the builtin open() semantics and return type instead of a file
descriptor.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>path</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The path of the file to be opened</li>
<li><strong>mode</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The same thing as the mode argument to open()</li>
<li><strong>perm</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; What permission bits to use if creating a new file</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.parent_dir">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">parent_dir</code><span class="sig-paren">(</span><em>directory</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.parent_dir" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the parent&#8217;s path</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.parseNfsUrl">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">parseNfsUrl</code><span class="sig-paren">(</span><em>nfsurl</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.parseNfsUrl" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.persistent_root_image">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">persistent_root_image</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.persistent_root_image" title="Permalink to this definition">¶</a></dt>
<dd><table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">whether we are running from a persistent (not in RAM) root.img</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.reIPL">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">reIPL</code><span class="sig-paren">(</span><em>ipldev</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.reIPL" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.requests_session">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">requests_session</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.requests_session" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a requests.Session object with file and ftp support.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.resetRpmDb">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">resetRpmDb</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.resetRpmDb" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.restart_service">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">restart_service</code><span class="sig-paren">(</span><em>service</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.restart_service" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.runOnErrorScripts">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">runOnErrorScripts</code><span class="sig-paren">(</span><em>scripts</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.runOnErrorScripts" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.save_screenshots">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">save_screenshots</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.save_screenshots" title="Permalink to this definition">¶</a></dt>
<dd><p>Save screenshots to the installed system</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.service_running">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">service_running</code><span class="sig-paren">(</span><em>service</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.service_running" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.setSysroot">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">setSysroot</code><span class="sig-paren">(</span><em>path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.setSysroot" title="Permalink to this definition">¶</a></dt>
<dd><dl class="docutils">
<dt>Change the OS root path.</dt>
<dd><table class="first last docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">param path:</th><td class="field-body">The new OS root path</td>
</tr>
</tbody>
</table>
</dd>
</dl>
<p>This should only be used by Payload subclasses which install operating
systems to non-default roots.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.setTargetPhysicalRoot">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">setTargetPhysicalRoot</code><span class="sig-paren">(</span><em>path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.setTargetPhysicalRoot" title="Permalink to this definition">¶</a></dt>
<dd><p>Change the physical root path</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>path</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; Path to use instead of /mnt/sysimage/</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.setdeepattr">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">setdeepattr</code><span class="sig-paren">(</span><em>obj</em>, <em>name</em>, <em>value</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.setdeepattr" title="Permalink to this definition">¶</a></dt>
<dd><p>This behaves as the standard setattr, but supports
composite (containing dots) attribute names.</p>
<p>As an example:</p>
<div class="highlight-python"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span> <span class="nc">O</span><span class="p">:</span>
<span class="gp">&gt;&gt;&gt; </span>  <span class="k">pass</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">a</span> <span class="o">=</span> <span class="n">O</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">a</span><span class="o">.</span><span class="n">b</span> <span class="o">=</span> <span class="n">O</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">a</span><span class="o">.</span><span class="n">b</span><span class="o">.</span><span class="n">c</span> <span class="o">=</span> <span class="n">O</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">setdeepattr</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="s2">&quot;b.c.d&quot;</span><span class="p">,</span> <span class="bp">True</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">a</span><span class="o">.</span><span class="n">b</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">d</span>
<span class="go">True</span>
</pre></div>
</div>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.setenv">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">setenv</code><span class="sig-paren">(</span><em>name</em>, <em>value</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.setenv" title="Permalink to this definition">¶</a></dt>
<dd><p>Set an environment variable to be used by child processes.</p>
<p>This method does not modify os.environ for the running process, which
is not thread-safe. If setenv has already been called for a particular
variable name, the old value is overwritten.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The name of the environment variable</li>
<li><strong>value</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The value of the environment variable</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.setup_translations">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">setup_translations</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.setup_translations" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.startProgram">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">startProgram</code><span class="sig-paren">(</span><em>argv</em>, <em>root='/'</em>, <em>stdin=None</em>, <em>stdout=-1</em>, <em>stderr=-2</em>, <em>env_prune=None</em>, <em>env_add=None</em>, <em>reset_handlers=True</em>, <em>reset_lang=True</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.startProgram" title="Permalink to this definition">¶</a></dt>
<dd><p>Start an external program and return the Popen object.</p>
<p>The root and reset_handlers arguments are handled by passing a
preexec_fn argument to subprocess.Popen, but an additional preexec_fn
can still be specified and will be run. The user preexec_fn will be run
last.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>argv</strong> &#8211; The command to run and argument</li>
<li><strong>root</strong> &#8211; The directory to chroot to before running command.</li>
<li><strong>stdin</strong> &#8211; The file object to read stdin from.</li>
<li><strong>stdout</strong> &#8211; The file object to write stdout to.</li>
<li><strong>stderr</strong> &#8211; The file object to write stderr to.</li>
<li><strong>env_prune</strong> &#8211; environment variables to remove before execution</li>
<li><strong>env_add</strong> &#8211; environment variables to add before execution</li>
<li><strong>reset_handlers</strong> &#8211; whether to reset to SIG_DFL any signal handlers set to SIG_IGN</li>
<li><strong>reset_lang</strong> &#8211; whether to set the locale of the child process to C</li>
<li><strong>kwargs</strong> &#8211; Additional parameters to pass to subprocess.Popen</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A Popen object for the running command.</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.startX">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">startX</code><span class="sig-paren">(</span><em>argv</em>, <em>output_redirect=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.startX" title="Permalink to this definition">¶</a></dt>
<dd><p>Start X and return once X is ready to accept connections.</p>
<p>X11, if SIGUSR1 is set to SIG_IGN, will send SIGUSR1 to the parent
process once it is ready to accept client connections. This method
sets that up and waits for the signal or bombs out if nothing happens
for a minute. The process will also be added to the list of watched
processes.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>argv</strong> &#8211; The command line to run, as a list</li>
<li><strong>output_redirect</strong> &#8211; file or file descriptor to redirect stdout and stderr to</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.start_service">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">start_service</code><span class="sig-paren">(</span><em>service</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.start_service" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.stop_service">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">stop_service</code><span class="sig-paren">(</span><em>service</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.stop_service" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.strip_accents">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">strip_accents</code><span class="sig-paren">(</span><em>s</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.strip_accents" title="Permalink to this definition">¶</a></dt>
<dd><p>This function takes arbitrary unicode string
and returns it with all the diacritics removed.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>s</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; arbitrary string</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">s with diacritics removed</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.sysroot_path">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">sysroot_path</code><span class="sig-paren">(</span><em>path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.sysroot_path" title="Permalink to this definition">¶</a></dt>
<dd><p>Make the given relative or absolute path &#8220;sysrooted&#8221;
:param str path: path to be sysrooted
:returns: sysrooted path
:rtype: str</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.touch">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">touch</code><span class="sig-paren">(</span><em>file_path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.touch" title="Permalink to this definition">¶</a></dt>
<dd><p>Create an empty file.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.unwatchAllProcesses">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">unwatchAllProcesses</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.unwatchAllProcesses" title="Permalink to this definition">¶</a></dt>
<dd><p>Clear the watched process list.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.unwatchProcess">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">unwatchProcess</code><span class="sig-paren">(</span><em>proc</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.unwatchProcess" title="Permalink to this definition">¶</a></dt>
<dd><p>Unwatch a process watched by watchProcess.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>proc</strong> &#8211; The Popen object for the process.</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.upcase_first_letter">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">upcase_first_letter</code><span class="sig-paren">(</span><em>text</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.upcase_first_letter" title="Permalink to this definition">¶</a></dt>
<dd><p>Helper function that upcases the first letter of the string. Python&#8217;s
standard string.capitalize() not only upcases the first letter but also
lowercases all the others. string.title() capitalizes all words in the
string.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">the given text with the first letter upcased</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.upperASCII">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">upperASCII</code><span class="sig-paren">(</span><em>s</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.upperASCII" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert a string to uppercase using only ASCII character definitions.</p>
<p>The returned string will contain only ASCII characters. This function is
locale-independent.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.vtActivate">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">vtActivate</code><span class="sig-paren">(</span><em>num</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.vtActivate" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to switch to tty number $num.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">whether the switch was successful or not</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.watchProcess">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">watchProcess</code><span class="sig-paren">(</span><em>proc</em>, <em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.watchProcess" title="Permalink to this definition">¶</a></dt>
<dd><p>Watch for a process exit, and raise a ExitError when it does.</p>
<p>This method installs a SIGCHLD signal handler and thus interferes
the child_watch_add methods in GLib. Use watchProcessGLib to convert
to GLib mode if using a GLib main loop.</p>
<p>Since the SIGCHLD handler calls wait() on the watched process, this call
cannot be combined with Popen.wait() or Popen.communicate, and also
doing so wouldn&#8217;t make a whole lot of sense.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>proc</strong> &#8211; The Popen object for the process</li>
<li><strong>name</strong> &#8211; The name of the process</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.watchProcessGLib">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">watchProcessGLib</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.watchProcessGLib" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert process watching to GLib mode.</p>
<p>This allows anaconda modes that use GLib main loops to use
GLib.child_watch_add and continue to watch processes started before the
main loop.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.iutil.xprogressive_delay">
<code class="descclassname">pyanaconda.iutil.</code><code class="descname">xprogressive_delay</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.iutil.xprogressive_delay" title="Permalink to this definition">¶</a></dt>
<dd><p>A delay generator, the delay starts short and gets longer
as the internal counter increases.
For example for 10 retries, the delay will increases from
0.5 to 256 seconds.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>retry_number</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; retry counter</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns float:</th><td class="field-body">time to wait in seconds</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.kexec">
<span id="pyanaconda-kexec-module"></span><h2>pyanaconda.kexec module<a class="headerlink" href="#module-pyanaconda.kexec" title="Permalink to this headline">¶</a></h2>
<dl class="exception">
<dt id="pyanaconda.kexec.GrubbyInfoError">
<em class="property">exception </em><code class="descclassname">pyanaconda.kexec.</code><code class="descname">GrubbyInfoError</code><a class="headerlink" href="#pyanaconda.kexec.GrubbyInfoError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.kexec.run_grubby">
<code class="descclassname">pyanaconda.kexec.</code><code class="descname">run_grubby</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kexec.run_grubby" title="Permalink to this definition">¶</a></dt>
<dd><p>Run grubby and retrieve the kernel, initrd and boot arguments</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>args</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#list" title="(in Python v3.5)"><em>list</em></a>) &#8211; Arguments to pass to grubby.</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">kernel path, initrd path, root device, kernel cmdline args.</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">namedtuple</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body">some error on failure</td>
</tr>
</tbody>
</table>
<dl class="docutils">
<dt>The returned namedtuple contains the following attributes:</dt>
<dd>kernel, initrd, root, args</dd>
</dl>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.kexec.setup_kexec">
<code class="descclassname">pyanaconda.kexec.</code><code class="descname">setup_kexec</code><span class="sig-paren">(</span><em>extra_args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kexec.setup_kexec" title="Permalink to this definition">¶</a></dt>
<dd><p>Setup kexec to use the new kernel and default bootloader entry</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>extra_args</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#list" title="(in Python v3.5)"><em>list</em></a>) &#8211; Extra arguments to pass to kexec</td>
</tr>
</tbody>
</table>
<p>This uses grubby to determine the bootloader arguments from the default entry,
and then sets up kexec so that reboot will use the new kernel and initrd instead
of doing a full reboot.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Once kexec is called there is nothing else to do, the reboot code already handles
having kexec setup.</p>
</div>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.keyboard">
<span id="pyanaconda-keyboard-module"></span><h2>pyanaconda.keyboard module<a class="headerlink" href="#module-pyanaconda.keyboard" title="Permalink to this headline">¶</a></h2>
<p>This module provides functions for dealing with keyboard layouts/keymaps in
Anaconda and the LocaledWrapper class with methods for setting, getting and
mutually converting X layouts and VConsole keymaps.</p>
<dl class="exception">
<dt id="pyanaconda.keyboard.InvalidLayoutVariantSpec">
<em class="property">exception </em><code class="descclassname">pyanaconda.keyboard.</code><code class="descname">InvalidLayoutVariantSpec</code><a class="headerlink" href="#pyanaconda.keyboard.InvalidLayoutVariantSpec" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Exception class for errors related to parsing layout and variant specification strings.</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.keyboard.KeyboardConfigError">
<em class="property">exception </em><code class="descclassname">pyanaconda.keyboard.</code><code class="descname">KeyboardConfigError</code><a class="headerlink" href="#pyanaconda.keyboard.KeyboardConfigError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Exception class for keyboard configuration related problems</p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.keyboard.LocaledWrapper">
<em class="property">class </em><code class="descclassname">pyanaconda.keyboard.</code><code class="descname">LocaledWrapper</code><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Class wrapping systemd-localed daemon functionality. By using safe_dbus
module it tries to prevent failures related to threads and main loops.</p>
<dl class="method">
<dt id="pyanaconda.keyboard.LocaledWrapper.convert_keymap">
<code class="descname">convert_keymap</code><span class="sig-paren">(</span><em>keymap</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.convert_keymap" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that returns X11 layouts and variants that (systemd-localed
thinks) match given keymap best.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>keymap</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; VConsole keymap</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">X11 layouts and variants that (systemd-localed thinks) match
given keymap best</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.keyboard.LocaledWrapper.convert_layout">
<code class="descname">convert_layout</code><span class="sig-paren">(</span><em>layout_variant</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.convert_layout" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that returns VConsole keymap that (systemd-localed thinks)
matches given layout and variant best.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>layout_variant</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; &#8216;layout (variant)&#8217; or &#8216;layout&#8217; specification</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a keymap matching layout and variant best</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)">string</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.keyboard.LocaledWrapper.keymap">
<code class="descname">keymap</code><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.keymap" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.keyboard.LocaledWrapper.layouts_variants">
<code class="descname">layouts_variants</code><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.layouts_variants" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.keyboard.LocaledWrapper.options">
<code class="descname">options</code><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.options" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.keyboard.LocaledWrapper.set_and_convert_keymap">
<code class="descname">set_and_convert_keymap</code><span class="sig-paren">(</span><em>keymap</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.set_and_convert_keymap" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that sets VConsole keymap and returns X11 layouts and
variants that (systemd-localed thinks) match given keymap best.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">string containing comma-separated &#8220;layout (variant)&#8221; or
&#8220;layout&#8221; layout specifications</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)">string</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.keyboard.LocaledWrapper.set_and_convert_layout">
<code class="descname">set_and_convert_layout</code><span class="sig-paren">(</span><em>layout_variant</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.set_and_convert_layout" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that sets X11 layout and variant (for later X sessions)
and returns VConsole keymap that (systemd-localed thinks) matches
given layout and variant best.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">a keymap matching layout and variant best</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)">string</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.keyboard.LocaledWrapper.set_keymap">
<code class="descname">set_keymap</code><span class="sig-paren">(</span><em>keymap</em>, <em>convert=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.set_keymap" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that sets VConsole keymap via systemd-localed&#8217;s DBus API.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>keymap</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; VConsole keymap that should be set</li>
<li><strong>convert</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether the keymap should be converted to a X11 layout
(see set_and_convert_keymap)</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.keyboard.LocaledWrapper.set_layouts">
<code class="descname">set_layouts</code><span class="sig-paren">(</span><em>layouts_variants</em>, <em>options=None</em>, <em>convert=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapper.set_layouts" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that sets X11 layouts and variants (for later X sessions) via
systemd-localed&#8217;s DBus API.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>layout_variant</strong> (<em>list of strings</em>) &#8211; list of &#8216;layout (variant)&#8217; or &#8216;layout&#8217;
specifications of layouts and variants</li>
<li><strong>options</strong> (<em>list of strings</em>) &#8211; list of X11 options that should be set</li>
<li><strong>convert</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether the keymap should be converted to a X11 layout
(see set_and_convert_keymap)</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</dd></dl>

<dl class="exception">
<dt id="pyanaconda.keyboard.LocaledWrapperError">
<em class="property">exception </em><code class="descclassname">pyanaconda.keyboard.</code><code class="descname">LocaledWrapperError</code><a class="headerlink" href="#pyanaconda.keyboard.LocaledWrapperError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.keyboard.KeyboardConfigError" title="pyanaconda.keyboard.KeyboardConfigError"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.keyboard.KeyboardConfigError</span></code></a></p>
<p>Exception class for reporting Localed-related problems</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.activate_keyboard">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">activate_keyboard</code><span class="sig-paren">(</span><em>keyboard</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.activate_keyboard" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to setup VConsole keymap and X11 layouts as specified in kickstart.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>keyboard</strong> (<em>ksdata.keyboard object</em>) &#8211; ksdata.keyboard object</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.join_layout_variant">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">join_layout_variant</code><span class="sig-paren">(</span><em>layout</em>, <em>variant=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.join_layout_variant" title="Permalink to this definition">¶</a></dt>
<dd><p>Join layout and variant to form the commonly used &#8216;layout (variant)&#8217;
or &#8216;layout&#8217; (if variant is missing) format.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">&#8216;layout (variant)&#8217; or &#8216;layout&#8217; string</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)">string</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.normalize_layout_variant">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">normalize_layout_variant</code><span class="sig-paren">(</span><em>layout_str</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.normalize_layout_variant" title="Permalink to this definition">¶</a></dt>
<dd><p>Normalize keyboard layout and variant specification given as a single
string. E.g. for a &#8216;layout(variant) string missing the space between the
left parenthesis return &#8216;layout (variant)&#8217; which is a proper layout and
variant specification we use.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>layout_str</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; a string specifying keyboard layout and its variant</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.parse_layout_variant">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">parse_layout_variant</code><span class="sig-paren">(</span><em>layout_variant_str</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.parse_layout_variant" title="Permalink to this definition">¶</a></dt>
<dd><p>Parse layout and variant from the string that may look like &#8216;layout&#8217; or
&#8216;layout (variant)&#8217;.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>layout_variant_str</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; keyboard layout and variant string specification</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">the (layout, variant) pair, where variant can be &#8220;&#8221;</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#tuple" title="(in Python v3.5)">tuple</a></td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLayoutVariantSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if the given string isn&#8217;t a valid layout
and variant specification string</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.populate_missing_items">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">populate_missing_items</code><span class="sig-paren">(</span><em>keyboard</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.populate_missing_items" title="Permalink to this definition">¶</a></dt>
<dd><p>Function that populates keyboard.vc_keymap and keyboard.x_layouts if they
are missing. By invoking LocaledWrapper&#8217;s methods this function READS AND
WRITES CONFIGURATION FILES (but tries to keep their content unchanged).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.set_x_keyboard_defaults">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">set_x_keyboard_defaults</code><span class="sig-paren">(</span><em>ksdata</em>, <em>xkl_wrapper</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.set_x_keyboard_defaults" title="Permalink to this definition">¶</a></dt>
<dd><p>Set default keyboard settings (layouts, layout switching).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>ksdata</strong> (<em>object instance</em>) &#8211; kickstart instance</li>
<li><strong>xkl_wrapper</strong> (<em>object instance</em>) &#8211; XklWrapper instance</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body"><p class="first last">if an invalid locale is given (see
localization.LANGCODE_RE)</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.keyboard.write_keyboard_config">
<code class="descclassname">pyanaconda.keyboard.</code><code class="descname">write_keyboard_config</code><span class="sig-paren">(</span><em>keyboard</em>, <em>root</em>, <em>convert=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.keyboard.write_keyboard_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Function that writes files with layouts configuration to
$root/etc/X11/xorg.conf.d/01-anaconda-layouts.conf and
$root/etc/vconsole.conf.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>keyboard</strong> &#8211; ksdata.keyboard object</li>
<li><strong>root</strong> &#8211; path to the root of the installed system</li>
<li><strong>convert</strong> &#8211; whether to convert specified values to get the missing
ones</li>
<li><strong>weight</strong> &#8211; weight (prefix) of the xorg.conf file written out</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.kickstart">
<span id="pyanaconda-kickstart-module"></span><h2>pyanaconda.kickstart module<a class="headerlink" href="#module-pyanaconda.kickstart" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaInternalScript">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaInternalScript</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaInternalScript" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.kickstart.AnacondaKSScript" title="pyanaconda.kickstart.AnacondaKSScript"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.kickstart.AnacondaKSScript</span></code></a></p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaKSHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaKSHandler</code><span class="sig-paren">(</span><em>addon_paths=None</em>, <em>commandUpdates=None</em>, <em>dataUpdates=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">f25.F25Handler</span></code></p>
<dl class="attribute">
<dt id="pyanaconda.kickstart.AnacondaKSHandler.AddonClassType">
<code class="descname">AddonClassType</code><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSHandler.AddonClassType" title="Permalink to this definition">¶</a></dt>
<dd><p>alias of <code class="xref py py-class docutils literal"><span class="pre">AddonData</span></code></p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaKSParser">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaKSParser</code><span class="sig-paren">(</span><em>handler</em>, <em>followIncludes=True</em>, <em>errorsAreFatal=True</em>, <em>missingIncludeIsFatal=True</em>, <em>scriptClass=&lt;class 'pyanaconda.kickstart.AnacondaKSScript'&gt;</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSParser" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.parser.KickstartParser</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaKSParser.handleCommand">
<code class="descname">handleCommand</code><span class="sig-paren">(</span><em>lineno</em>, <em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSParser.handleCommand" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaKSParser.setupSections">
<code class="descname">setupSections</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSParser.setupSections" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaKSScript">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaKSScript</code><span class="sig-paren">(</span><em>script</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSScript" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.parser.Script</span></code></p>
<p>Execute a kickstart script</p>
<p>This will write the script to a file named /tmp/ks-script- before
execution.
Output is logged by the program logger, the path specified by &#8211;log
or to /tmp/ks-script-*.log</p>
<p>Create a new Script instance.  Instance attributes:</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>errorOnFail</strong> &#8211; If execution of the script fails, should anaconda
stop, display an error, and then reboot without
running any other scripts?</li>
<li><strong>inChroot</strong> &#8211; Does the script execute in anaconda&#8217;s chroot
environment or not?</li>
<li><strong>interp</strong> &#8211; The program that should be used to interpret this
script.</li>
<li><strong>lineno</strong> &#8211; The line number this script starts on.</li>
<li><strong>logfile</strong> &#8211; Where all messages from the script should be logged.</li>
<li><strong>script</strong> &#8211; A string containing all the lines of the script.</li>
<li><strong>type</strong> &#8211; The type of the script, which can be KS_SCRIPT_* from
<code class="xref py py-mod docutils literal"><span class="pre">pykickstart.constants</span></code>.</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaKSScript.run">
<code class="descname">run</code><span class="sig-paren">(</span><em>chroot</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaKSScript.run" title="Permalink to this definition">¶</a></dt>
<dd><p>Run the kickstart script
&#64;param chroot directory path to chroot into before execution</p>
</dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaPreParser">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaPreParser</code><span class="sig-paren">(</span><em>handler</em>, <em>followIncludes=True</em>, <em>errorsAreFatal=True</em>, <em>missingIncludeIsFatal=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaPreParser" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.parser.KickstartParser</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaPreParser.handleCommand">
<code class="descname">handleCommand</code><span class="sig-paren">(</span><em>lineno</em>, <em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaPreParser.handleCommand" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaPreParser.setupSections">
<code class="descname">setupSections</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaPreParser.setupSections" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaSection">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaSection</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSection" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.sections.Section</span></code></p>
<p>A section for anaconda specific commands.</p>
<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaSection.finalize">
<code class="descname">finalize</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSection.finalize" title="Permalink to this definition">¶</a></dt>
<dd><p>Let %anaconda know no additional data will come.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaSection.handleHeader">
<code class="descname">handleHeader</code><span class="sig-paren">(</span><em>lineno</em>, <em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSection.handleHeader" title="Permalink to this definition">¶</a></dt>
<dd><p>Process the arguments to the %anaconda header.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.AnacondaSection.handleLine">
<code class="descname">handleLine</code><span class="sig-paren">(</span><em>line</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSection.handleLine" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.kickstart.AnacondaSection.sectionOpen">
<code class="descname">sectionOpen</code><em class="property"> = '%anaconda'</em><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSection.sectionOpen" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AnacondaSectionHandler">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AnacondaSectionHandler</code><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSectionHandler" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.base.BaseHandler</span></code></p>
<p>A handler for only the anaconda ection&#8217;s commands.</p>
<dl class="attribute">
<dt id="pyanaconda.kickstart.AnacondaSectionHandler.commandMap">
<code class="descname">commandMap</code><em class="property"> = {'pwpolicy': &lt;class 'pyanaconda.pwpolicy.F22_PwPolicy'&gt;}</em><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSectionHandler.commandMap" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.kickstart.AnacondaSectionHandler.dataMap">
<code class="descname">dataMap</code><em class="property"> = {'PwPolicyData': &lt;class 'pyanaconda.pwpolicy.F22_PwPolicyData'&gt;}</em><a class="headerlink" href="#pyanaconda.kickstart.AnacondaSectionHandler.dataMap" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Authconfig">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Authconfig</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Authconfig" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.authconfig.FC3_Authconfig</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Authconfig.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Authconfig.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Authconfig.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Authconfig.setup" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.AutoPart">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">AutoPart</code><span class="sig-paren">(</span><em>writePriority=100</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AutoPart" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.autopart.F21_AutoPart</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.AutoPart.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AutoPart.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.AutoPart.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.AutoPart.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.BTRFS">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">BTRFS</code><span class="sig-paren">(</span><em>writePriority=132</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.BTRFS" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.btrfs.F23_BTRFS</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.BTRFS.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.BTRFS.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.BTRFSData">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">BTRFSData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.BTRFSData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.btrfs.F23_BTRFSData</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.BTRFSData.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.BTRFSData.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Bootloader">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Bootloader</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Bootloader" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.bootloader.F21_Bootloader</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Bootloader.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Bootloader.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Bootloader.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Bootloader.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.ClearPart">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">ClearPart</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ClearPart" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.clearpart.F21_ClearPart</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.ClearPart.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ClearPart.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.ClearPart.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ClearPart.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Fcoe">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Fcoe</code><span class="sig-paren">(</span><em>writePriority=71</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Fcoe" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.fcoe.F13_Fcoe</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Fcoe.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Fcoe.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Firewall">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Firewall</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Firewall" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.firewall.F20_Firewall</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Firewall.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Firewall.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Firewall.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Firewall.setup" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Firstboot">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Firstboot</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Firstboot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.firstboot.FC3_Firstboot</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Firstboot.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Firstboot.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Firstboot.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Firstboot.setup" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Group">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Group</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Group" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.group.F12_Group</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Group.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>users</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Group.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.IgnoreDisk">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">IgnoreDisk</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.IgnoreDisk" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.ignoredisk.RHEL6_IgnoreDisk</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.IgnoreDisk.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.IgnoreDisk.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Iscsi">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Iscsi</code><span class="sig-paren">(</span><em>writePriority=71</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Iscsi" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.iscsi.F17_Iscsi</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Iscsi.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Iscsi.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.IscsiName">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">IscsiName</code><span class="sig-paren">(</span><em>writePriority=70</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.IscsiName" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.iscsiname.FC6_IscsiName</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.IscsiName.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.IscsiName.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Keyboard">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Keyboard</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Keyboard" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.keyboard.F18_Keyboard</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Keyboard.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Keyboard.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Lang">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Lang</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Lang" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.lang.F19_Lang</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Lang.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Lang.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.LogVol">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">LogVol</code><span class="sig-paren">(</span><em>writePriority=133</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.LogVol" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.logvol.F23_LogVol</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.LogVol.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.LogVol.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.LogVolData">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">LogVolData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.LogVolData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.logvol.F23_LogVolData</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.LogVolData.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.LogVolData.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Logging">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Logging</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Logging" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.logging.FC6_Logging</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Logging.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Logging.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Network">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Network</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Network" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.network.F24_Network</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Network.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Network.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Network.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Network.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Network.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Network.setup" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Partition">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Partition</code><span class="sig-paren">(</span><em>writePriority=130</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Partition" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.partition.F23_Partition</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Partition.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Partition.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.PartitionData">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">PartitionData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.PartitionData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.partition.F23_PartData</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.PartitionData.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.PartitionData.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Raid">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Raid</code><span class="sig-paren">(</span><em>writePriority=131</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Raid" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.raid.F25_Raid</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Raid.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Raid.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.RaidData">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">RaidData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.RaidData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.raid.F25_RaidData</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.RaidData.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.RaidData.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Realm">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Realm</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Realm" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.realm.F19_Realm</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Realm.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Realm.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Realm.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Realm.setup" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.RepoData">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">RepoData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.RepoData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.repo.F21_RepoData</span></code></p>
<p>Add enabled kwarg</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>enabled</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; The repo has been enabled</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.ReqPart">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">ReqPart</code><span class="sig-paren">(</span><em>writePriority=100</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ReqPart" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.reqpart.F23_ReqPart</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.ReqPart.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ReqPart.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.RootPw">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">RootPw</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.RootPw" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.rootpw.F18_RootPw</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.RootPw.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>users</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.RootPw.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.SELinux">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">SELinux</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.SELinux" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.selinux.FC3_SELinux</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.SELinux.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.SELinux.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Services">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Services</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Services" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.services.FC6_Services</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Services.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Services.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.SkipX">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">SkipX</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.SkipX" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.skipx.FC3_SkipX</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.SkipX.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.SkipX.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.SshKey">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">SshKey</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.SshKey" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.sshkey.F22_SshKey</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.SshKey.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>users</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.SshKey.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Timezone">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Timezone</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.timezone.F23_Timezone</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Timezone.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Timezone.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.kickstart.Timezone.setup">
<code class="descname">setup</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Timezone.setup" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.Upgrade">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">Upgrade</code><a class="headerlink" href="#pyanaconda.kickstart.Upgrade" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.upgrade.F20_Upgrade</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.Upgrade.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.Upgrade.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.User">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">User</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.User" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.user.F19_User</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.User.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>users</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.User.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.VolGroup">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">VolGroup</code><span class="sig-paren">(</span><em>writePriority=132</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.VolGroup" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.volgroup.F21_VolGroup</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.VolGroup.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.VolGroup.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.VolGroupData">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">VolGroupData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.VolGroupData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.volgroup.F21_VolGroupData</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.VolGroupData.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.VolGroupData.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.XConfig">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">XConfig</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.XConfig" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.xconfig.F14_XConfig</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.XConfig.execute">
<code class="descname">execute</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.XConfig.execute" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.kickstart.ZFCP">
<em class="property">class </em><code class="descclassname">pyanaconda.kickstart.</code><code class="descname">ZFCP</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ZFCP" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.commands.zfcp.F14_ZFCP</span></code></p>
<dl class="method">
<dt id="pyanaconda.kickstart.ZFCP.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.ZFCP.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.appendPostScripts">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">appendPostScripts</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.appendPostScripts" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.deviceMatches">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">deviceMatches</code><span class="sig-paren">(</span><em>spec</em>, <em>devicetree=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.deviceMatches" title="Permalink to this definition">¶</a></dt>
<dd><p>Return names of block devices matching the provided specification.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>spec</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; a device identifier (name, UUID=&lt;uuid&gt;, &amp;c)</li>
<li><strong>devicetree</strong> (<code class="xref py py-class docutils literal"><span class="pre">blivet.DeviceTree</span></code>) &#8211; device tree to look up devices in (optional)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">names of matching devices</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">list of str</p>
</td>
</tr>
</tbody>
</table>
<p>parse methods will not have access to a devicetree, while execute
methods will. The devicetree is superior in that it can resolve md
array names and in that it reflects scheduled device removals, but for
normal local disks udev.resolve_devspec should suffice.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.doKickstartStorage">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">doKickstartStorage</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.doKickstartStorage" title="Permalink to this definition">¶</a></dt>
<dd><p>Setup storage state from the kickstart data</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.getAvailableDiskSpace">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">getAvailableDiskSpace</code><span class="sig-paren">(</span><em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.getAvailableDiskSpace" title="Permalink to this definition">¶</a></dt>
<dd><p>Get overall disk space available on disks we may use.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>storage</strong> &#8211; blivet.Blivet instance</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">overall disk space available</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><code class="xref py py-class docutils literal"><span class="pre">blivet.size.Size</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.getEscrowCertificate">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">getEscrowCertificate</code><span class="sig-paren">(</span><em>escrowCerts</em>, <em>url</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.getEscrowCertificate" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.lookupAlias">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">lookupAlias</code><span class="sig-paren">(</span><em>devicetree</em>, <em>alias</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.lookupAlias" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.parseKickstart">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">parseKickstart</code><span class="sig-paren">(</span><em>f</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.parseKickstart" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.preScriptPass">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">preScriptPass</code><span class="sig-paren">(</span><em>f</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.preScriptPass" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.refreshAutoSwapSize">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">refreshAutoSwapSize</code><span class="sig-paren">(</span><em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.refreshAutoSwapSize" title="Permalink to this definition">¶</a></dt>
<dd><p>Refresh size of the auto partitioning request for swap device according to
the current state of the storage configuration.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>storage</strong> &#8211; blivet.Blivet instance</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.removeExistingFormat">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">removeExistingFormat</code><span class="sig-paren">(</span><em>device</em>, <em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.removeExistingFormat" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.resetCustomStorageData">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">resetCustomStorageData</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.resetCustomStorageData" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.runPostScripts">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">runPostScripts</code><span class="sig-paren">(</span><em>scripts</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.runPostScripts" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.runPreInstallScripts">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">runPreInstallScripts</code><span class="sig-paren">(</span><em>scripts</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.runPreInstallScripts" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.runPreScripts">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">runPreScripts</code><span class="sig-paren">(</span><em>scripts</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.runPreScripts" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.kickstart.runTracebackScripts">
<code class="descclassname">pyanaconda.kickstart.</code><code class="descname">runTracebackScripts</code><span class="sig-paren">(</span><em>scripts</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.kickstart.runTracebackScripts" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.localization">
<span id="pyanaconda-localization-module"></span><h2>pyanaconda.localization module<a class="headerlink" href="#module-pyanaconda.localization" title="Permalink to this headline">¶</a></h2>
<dl class="exception">
<dt id="pyanaconda.localization.InvalidLocaleSpec">
<em class="property">exception </em><code class="descclassname">pyanaconda.localization.</code><code class="descname">InvalidLocaleSpec</code><a class="headerlink" href="#pyanaconda.localization.InvalidLocaleSpec" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.localization.LocalizationConfigError" title="pyanaconda.localization.LocalizationConfigError"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.localization.LocalizationConfigError</span></code></a></p>
<p>Exception class for the errors related to invalid locale specs</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.localization.LocalizationConfigError">
<em class="property">exception </em><code class="descclassname">pyanaconda.localization.</code><code class="descname">LocalizationConfigError</code><a class="headerlink" href="#pyanaconda.localization.LocalizationConfigError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Exception class for localization configuration related problems</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.find_best_locale_match">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">find_best_locale_match</code><span class="sig-paren">(</span><em>locale</em>, <em>langcodes</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.find_best_locale_match" title="Permalink to this definition">¶</a></dt>
<dd><p>Find the best match for the locale in a list of langcodes. This is useful
when e.g. pt_BR is a locale and there are possibilities to choose an item
(e.g. rnote) for a list containing both pt and pt_BR or even also pt_PT.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; a valid locale (e.g. en_US.UTF-8 or <a class="reference external" href="mailto:sr_RS&#46;UTF-8&#37;&#52;&#48;latin">sr_RS<span>&#46;</span>UTF-8<span>&#64;</span>latin</a>, etc.)</li>
<li><strong>langcodes</strong> (<em>list(str) or generator(str)</em>) &#8211; a list or generator of langcodes (e.g. en, en_US, <a class="reference external" href="mailto:en_US&#37;&#52;&#48;latin">en_US<span>&#64;</span>latin</a>, etc.)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">the best matching langcode from the list of None if none matches</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">str or None</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_available_translations">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_available_translations</code><span class="sig-paren">(</span><em>localedir=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_available_translations" title="Permalink to this definition">¶</a></dt>
<dd><p>Method that generates (i.e. returns a generator) available translations for
the installer in the given localedir.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">generator yielding available translations (languages)</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">generator yielding strings</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_english_name">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_english_name</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_english_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning english name for the given locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale to return english name for</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">english name for the locale or empty string if unknown</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">st</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_firmware_language">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_firmware_language</code><span class="sig-paren">(</span><em>text_mode=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_firmware_language" title="Permalink to this definition">¶</a></dt>
<dd><p>Procedure that returns the firmware language information (if any).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>text_mode</strong> (<em>boot</em>) &#8211; if the locale is being setup for text mode</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">the firmware language translated into a locale string, or None</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_language_locales">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_language_locales</code><span class="sig-paren">(</span><em>lang</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_language_locales" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning all locales available for the given language.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>lang</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; language to get available locales for</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a list of available locales</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_locale_console_fonts">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_locale_console_fonts</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_locale_console_fonts" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning preferred console fonts for the given locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale string (see LANGCODE_RE)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">list of preferred console fonts</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_locale_keyboards">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_locale_keyboards</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_locale_keyboards" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning preferred keyboard layouts for the given locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale string (see LANGCODE_RE)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">list of preferred keyboard layouts</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_locale_scripts">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_locale_scripts</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_locale_scripts" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning preferred scripts (writing systems) for the given locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale string (see LANGCODE_RE)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">list of preferred scripts</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_locale_territory">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_locale_territory</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_locale_territory" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning locale&#8217;s territory.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale string (see LANGCODE_RE)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">territory or None</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">str or None</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_locale_timezones">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_locale_timezones</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_locale_timezones" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning preferred timezones for the given locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale string (see LANGCODE_RE)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">list of preferred timezones</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_native_name">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_native_name</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_native_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning native name for the given locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale to return native name for</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">english name for the locale or empty string if unknown</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">st</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_territory_locales">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_territory_locales</code><span class="sig-paren">(</span><em>territory</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_territory_locales" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning list of locales for the given territory. The list is
sorted from the most probable locale to the least probable one (based on
langtable&#8217;s ranking.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>territory</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; territory to return locales for</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">list of locales</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.get_xlated_timezone">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">get_xlated_timezone</code><span class="sig-paren">(</span><em>tz_spec_part</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.get_xlated_timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>Function returning translated name of a region, city or complete timezone
name according to the current value of the $LANG variable.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>tz_spec_part</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; a region, city or complete timezone name</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">translated name of the given region, city or timezone</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.is_supported_locale">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">is_supported_locale</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.is_supported_locale" title="Permalink to this definition">¶</a></dt>
<dd><p>Function that tells if the given locale is supported by the Anaconda or
not. We consider locales supported by the langtable as supported by the
Anaconda.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale to test</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">whether the given locale is supported or not</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.langcode_matches_locale">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">langcode_matches_locale</code><span class="sig-paren">(</span><em>langcode</em>, <em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.langcode_matches_locale" title="Permalink to this definition">¶</a></dt>
<dd><p>Function that tells if the given langcode matches the given locale. I.e. if
all parts of appearing in the langcode (language, territory, script and
encoding) are the same as the matching parts of the locale.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>langcode</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; a langcode (e.g. en, en_US, <a class="reference external" href="mailto:en_US&#37;&#52;&#48;latin">en_US<span>&#64;</span>latin</a>, etc.)</li>
<li><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; a valid locale (e.g. en_US.UTF-8 or <a class="reference external" href="mailto:sr_RS&#46;UTF-8&#37;&#52;&#48;latin">sr_RS<span>&#46;</span>UTF-8<span>&#64;</span>latin</a>, etc.)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">whether the given langcode matches the given locale or not</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.locale_supported_in_console">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">locale_supported_in_console</code><span class="sig-paren">(</span><em>locale</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.locale_supported_in_console" title="Permalink to this definition">¶</a></dt>
<dd><p>Function that tells if the given locale can be displayed by the Linux console.</p>
<p>The Linux console can display Latin, Cyrillic and Greek characters reliably,
but others such as Japanese, can&#8217;t be correctly installed.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale to test</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">whether the given locale is supported by the console or not</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises InvalidLocaleSpec:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if an invalid locale is given (see LANGCODE_RE)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.parse_langcode">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">parse_langcode</code><span class="sig-paren">(</span><em>langcode</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.parse_langcode" title="Permalink to this definition">¶</a></dt>
<dd><p>For a given langcode (e.g. <a class="reference external" href="mailto:'SR_RS&#46;UTF-8&#37;&#52;&#48;latin">'SR_RS<span>&#46;</span>UTF-8<span>&#64;</span>latin</a>&#8216;) returns a dictionary
with the following keys and example values:</p>
<p>&#8216;language&#8217; : &#8216;SR&#8217;
&#8216;territory&#8217; : &#8216;RS&#8217;
&#8216;encoding&#8217; : &#8216;UTF-8&#8217;
&#8216;script&#8217; : &#8216;latin&#8217;</p>
<p>or None if the given string doesn&#8217;t match the LANGCODE_RE.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.resolve_date_format">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">resolve_date_format</code><span class="sig-paren">(</span><em>year</em>, <em>month</em>, <em>day</em>, <em>fail_safe=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.resolve_date_format" title="Permalink to this definition">¶</a></dt>
<dd><p>Puts the year, month and day objects in the right order according to the
currently set locale and provides format specification for each of the
fields.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>year</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#any" title="(in Python v3.5)"><em>any</em></a>) &#8211; any object or value representing year</li>
<li><strong>month</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#any" title="(in Python v3.5)"><em>any</em></a>) &#8211; any object or value representing month</li>
<li><strong>day</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#any" title="(in Python v3.5)"><em>any</em></a>) &#8211; any object or value representing day</li>
<li><strong>fail_safe</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether to fall back to default in case of invalid
format or raise exception instead</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">a pair where the first field contains a tuple with the year, month
and day objects/values put in the right order and where the second
field contains a tuple with three <code class="xref py py-class docutils literal"><span class="pre">_DateFieldSpec</span></code> objects
specifying formats respectively to the first (year, month, day)
field, e.g. ((year, month, day), (y_fmt, m_fmt, d_fmt))</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#tuple" title="(in Python v3.5)">tuple</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#ValueError" title="(in Python v3.5)">ValueError</a>:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body"><p class="first last">in case currently set locale has unsupported date
format and fail_safe is set to False</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.set_console_font">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">set_console_font</code><span class="sig-paren">(</span><em>font</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.set_console_font" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to set console font to the given value.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>font</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; console font name</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">True on success, False on failure</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">Bool</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.setup_locale">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">setup_locale</code><span class="sig-paren">(</span><em>locale</em>, <em>lang=None</em>, <em>text_mode=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.setup_locale" title="Permalink to this definition">¶</a></dt>
<dd><p>Procedure setting the system to use the given locale and store it in to the
ksdata.lang object (if given). DOES NOT PERFORM ANY CHECKS OF THE GIVEN
LOCALE.</p>
<p>$LANG must be set by the caller in order to set the language used by gettext.
Doing this in a thread-safe way is up to the caller.</p>
<p>We also try to set a proper console font for the locale in text mode.
If the font for the locale can&#8217;t be displayed in the Linux console,
we fall back to the English locale.</p>
<p>This function returns the locale that was used in the setlocale call, which,
depending on what the environment and interface is able to support, may be
different from the locale requested.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale to setup</li>
<li><strong>lang</strong> &#8211; ksdata.lang object or None</li>
<li><strong>text_mode</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; if the locale is being setup for text mode</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">the locale that was actually set</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.setup_locale_environment">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">setup_locale_environment</code><span class="sig-paren">(</span><em>locale=None</em>, <em>text_mode=False</em>, <em>prefer_environment=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.setup_locale_environment" title="Permalink to this definition">¶</a></dt>
<dd><p>Clean and configure the local environment variables.</p>
<p>This function will attempt to determine the desired locale and configure
the process environment (os.environ) in the least surprising way. If a
locale argument is provided, it will be attempted first. After that, this
function will attempt to use the language environment variables in a manner
similar to gettext(3) (in order, $LANGUAGE, $LC_ALL, $LC_MESSAGES, $LANG),
followed by the UEFI PlatformLang, followed by a default.</p>
<p>When this function returns, $LANG will be set, and $LANGUAGE, $LC_ALL,
and $LC_MESSAGES will not be set, because they get in the way when changing
the language after startup.</p>
<p>This function must be run before any threads are started. This function
modifies the process environment, which is not thread-safe.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>locale</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; locale to setup if provided</li>
<li><strong>text_mode</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; if the locale is being setup for text mode</li>
<li><strong>prefer_environment</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether the process environment, if available, overrides the locale parameter</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">None</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/constants.html#None" title="(in Python v3.5)">None</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.localization.write_language_configuration">
<code class="descclassname">pyanaconda.localization.</code><code class="descname">write_language_configuration</code><span class="sig-paren">(</span><em>lang</em>, <em>root</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.localization.write_language_configuration" title="Permalink to this definition">¶</a></dt>
<dd><p>Write language configuration to the $root/etc/locale.conf file.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>lang</strong> &#8211; ksdata.lang object</li>
<li><strong>root</strong> &#8211; path to the root of the installed system</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.network">
<span id="pyanaconda-network-module"></span><h2>pyanaconda.network module<a class="headerlink" href="#module-pyanaconda.network" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.network.IfcfgFile">
<em class="property">class </em><code class="descclassname">pyanaconda.network.</code><code class="descname">IfcfgFile</code><span class="sig-paren">(</span><em>filename</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.IfcfgFile" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.simpleconfig.SimpleConfigFile" title="pyanaconda.simpleconfig.SimpleConfigFile"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.simpleconfig.SimpleConfigFile</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.network.IfcfgFile.read">
<code class="descname">read</code><span class="sig-paren">(</span><em>filename=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.IfcfgFile.read" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.network.IfcfgFile.set">
<code class="descname">set</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.IfcfgFile.set" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.network.IfcfgFile.unset">
<code class="descname">unset</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.IfcfgFile.unset" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.network.IfcfgFile.write">
<code class="descname">write</code><span class="sig-paren">(</span><em>filename=None</em>, <em>use_tmp=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.IfcfgFile.write" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.add_connection_for_ksdata">
<code class="descclassname">pyanaconda.network.</code><code class="descname">add_connection_for_ksdata</code><span class="sig-paren">(</span><em>networkdata</em>, <em>devname</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.add_connection_for_ksdata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.apply_kickstart">
<code class="descclassname">pyanaconda.network.</code><code class="descname">apply_kickstart</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.apply_kickstart" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.autostartFCoEDevices">
<code class="descclassname">pyanaconda.network.</code><code class="descname">autostartFCoEDevices</code><span class="sig-paren">(</span><em>rootpath</em>, <em>storage</em>, <em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.autostartFCoEDevices" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.bond_options_ksdata_to_dbus">
<code class="descclassname">pyanaconda.network.</code><code class="descname">bond_options_ksdata_to_dbus</code><span class="sig-paren">(</span><em>opts_str</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.bond_options_ksdata_to_dbus" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.check_ip_address">
<code class="descclassname">pyanaconda.network.</code><code class="descname">check_ip_address</code><span class="sig-paren">(</span><em>address</em>, <em>version=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.check_ip_address" title="Permalink to this definition">¶</a></dt>
<dd><p>Check if the given IP address is valid in given version if set.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>address</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; IP address for testing</li>
<li><strong>version</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; <code class="docutils literal"><span class="pre">4</span></code> for IPv4, <code class="docutils literal"><span class="pre">6</span></code> for IPv6 or
<code class="docutils literal"><span class="pre">None</span></code> to allow either format</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first"><code class="docutils literal"><span class="pre">True</span></code> if IP address is valid or <code class="docutils literal"><span class="pre">False</span></code> if not</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.copyDhclientConfFiles">
<code class="descclassname">pyanaconda.network.</code><code class="descname">copyDhclientConfFiles</code><span class="sig-paren">(</span><em>destPath</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.copyDhclientConfFiles" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.copyFileToPath">
<code class="descclassname">pyanaconda.network.</code><code class="descname">copyFileToPath</code><span class="sig-paren">(</span><em>fileName</em>, <em>destPath=''</em>, <em>overwrite=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.copyFileToPath" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.copyIfcfgFiles">
<code class="descclassname">pyanaconda.network.</code><code class="descname">copyIfcfgFiles</code><span class="sig-paren">(</span><em>destPath</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.copyIfcfgFiles" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.default_ks_vlan_interface_name">
<code class="descclassname">pyanaconda.network.</code><code class="descname">default_ks_vlan_interface_name</code><span class="sig-paren">(</span><em>parent</em>, <em>vlanid</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.default_ks_vlan_interface_name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.default_route_device">
<code class="descclassname">pyanaconda.network.</code><code class="descname">default_route_device</code><span class="sig-paren">(</span><em>family='inet'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.default_route_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.disableIPV6">
<code class="descclassname">pyanaconda.network.</code><code class="descname">disableIPV6</code><span class="sig-paren">(</span><em>rootpath</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.disableIPV6" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.dracutBootArguments">
<code class="descclassname">pyanaconda.network.</code><code class="descname">dracutBootArguments</code><span class="sig-paren">(</span><em>devname</em>, <em>ifcfg</em>, <em>storage_ipaddr</em>, <em>hostname=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.dracutBootArguments" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.dracutSetupArgs">
<code class="descclassname">pyanaconda.network.</code><code class="descname">dracutSetupArgs</code><span class="sig-paren">(</span><em>networkStorageDevice</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.dracutSetupArgs" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.dumpMissingDefaultIfcfgs">
<code class="descclassname">pyanaconda.network.</code><code class="descname">dumpMissingDefaultIfcfgs</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.dumpMissingDefaultIfcfgs" title="Permalink to this definition">¶</a></dt>
<dd><p>Dump missing default ifcfg file for wired devices.
For default auto connections created by NM upon start - which happens
in case of missing ifcfg file - rename the connection using device name
and dump its ifcfg file. (For server, default auto connections will
be turned off in NetworkManager.conf.)
The connection id (and consequently ifcfg file) is set to device name.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">list of devices for which ifcfg file was dumped.</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.find_ifcfg_file">
<code class="descclassname">pyanaconda.network.</code><code class="descname">find_ifcfg_file</code><span class="sig-paren">(</span><em>values</em>, <em>root_path=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.find_ifcfg_file" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.find_ifcfg_file_of_device">
<code class="descclassname">pyanaconda.network.</code><code class="descname">find_ifcfg_file_of_device</code><span class="sig-paren">(</span><em>devname</em>, <em>root_path=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.find_ifcfg_file_of_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.getFirstRealIP">
<code class="descclassname">pyanaconda.network.</code><code class="descname">getFirstRealIP</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.getFirstRealIP" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the first real non-local IP we find from the list of
all active devices.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">str or <code class="docutils literal"><span class="pre">None</span></code></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.getHostname">
<code class="descclassname">pyanaconda.network.</code><code class="descname">getHostname</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.getHostname" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to determine what the hostname should be for this system</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.getIPs">
<code class="descclassname">pyanaconda.network.</code><code class="descname">getIPs</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.getIPs" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a list of IP addresses for all active devices.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.get_device_name">
<code class="descclassname">pyanaconda.network.</code><code class="descname">get_device_name</code><span class="sig-paren">(</span><em>network_data</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.get_device_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Find the first network device which matches the kickstart specification.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>network_data</strong> &#8211; A pykickstart NetworkData object</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a string naming a physical device, or &#8220;&#8221; meaning none matched</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.get_slaves_from_ifcfgs">
<code class="descclassname">pyanaconda.network.</code><code class="descname">get_slaves_from_ifcfgs</code><span class="sig-paren">(</span><em>master_option</em>, <em>master_specs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.get_slaves_from_ifcfgs" title="Permalink to this definition">¶</a></dt>
<dd><p>List of slaves of master specified by master_specs in master_option.</p>
<p>master_option is ifcfg option containing spec of master
master_specs is a list containing device name of master (dracut)
and/or master&#8217;s connection uuid</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.get_team_slaves">
<code class="descclassname">pyanaconda.network.</code><code class="descname">get_team_slaves</code><span class="sig-paren">(</span><em>master_specs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.get_team_slaves" title="Permalink to this definition">¶</a></dt>
<dd><p>List of slaves of master specified by master_specs (name, opts).</p>
<p>master_specs is a list containing device name of master (dracut)
and/or master&#8217;s connection uuid</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.has_some_wired_autoconnect_device">
<code class="descclassname">pyanaconda.network.</code><code class="descname">has_some_wired_autoconnect_device</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.has_some_wired_autoconnect_device" title="Permalink to this definition">¶</a></dt>
<dd><p>Is there a wired network device with autoconnect?</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.hostname_ksdata">
<code class="descclassname">pyanaconda.network.</code><code class="descname">hostname_ksdata</code><span class="sig-paren">(</span><em>hostname</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.hostname_ksdata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.ibftIface">
<code class="descclassname">pyanaconda.network.</code><code class="descname">ibftIface</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.ibftIface" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.ifaceForHostIP">
<code class="descclassname">pyanaconda.network.</code><code class="descname">ifaceForHostIP</code><span class="sig-paren">(</span><em>host</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.ifaceForHostIP" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.ifcfg_to_ksdata">
<code class="descclassname">pyanaconda.network.</code><code class="descname">ifcfg_to_ksdata</code><span class="sig-paren">(</span><em>ifcfg</em>, <em>devname</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.ifcfg_to_ksdata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.is_using_team_device">
<code class="descclassname">pyanaconda.network.</code><code class="descname">is_using_team_device</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.is_using_team_device" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.ks_spec_to_device_name">
<code class="descclassname">pyanaconda.network.</code><code class="descname">ks_spec_to_device_name</code><span class="sig-paren">(</span><em>ksspec=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.ks_spec_to_device_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Find the first network device which matches the kickstart specification.
Will not match derived types such as bonds and vlans.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>ksspec</strong> &#8211; kickstart-specified device name</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a string naming a physical device, or &#8220;&#8221; meaning none matched</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.ksdata_from_ifcfg">
<code class="descclassname">pyanaconda.network.</code><code class="descname">ksdata_from_ifcfg</code><span class="sig-paren">(</span><em>devname</em>, <em>uuid=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.ksdata_from_ifcfg" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.logIfcfgFile">
<code class="descclassname">pyanaconda.network.</code><code class="descname">logIfcfgFile</code><span class="sig-paren">(</span><em>path</em>, <em>message=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.logIfcfgFile" title="Permalink to this definition">¶</a></dt>
<dd><p>Log content of network ifcfg file.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>path</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; path to the ifcfg file</li>
<li><strong>message</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; optional message appended to the log</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.logIfcfgFiles">
<code class="descclassname">pyanaconda.network.</code><code class="descname">logIfcfgFiles</code><span class="sig-paren">(</span><em>message=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.logIfcfgFiles" title="Permalink to this definition">¶</a></dt>
<dd><p>Log contents of all network ifcfg files.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>message</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; append message to the log</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.netmask2prefix">
<code class="descclassname">pyanaconda.network.</code><code class="descname">netmask2prefix</code><span class="sig-paren">(</span><em>netmask</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.netmask2prefix" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert netmask to prefix (CIDR bits)</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.networkInitialize">
<code class="descclassname">pyanaconda.network.</code><code class="descname">networkInitialize</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.networkInitialize" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.prefix2netmask">
<code class="descclassname">pyanaconda.network.</code><code class="descname">prefix2netmask</code><span class="sig-paren">(</span><em>prefix</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.prefix2netmask" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert prefix (CIDR bits) to netmask</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.sanityCheckHostname">
<code class="descclassname">pyanaconda.network.</code><code class="descname">sanityCheckHostname</code><span class="sig-paren">(</span><em>hostname</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.sanityCheckHostname" title="Permalink to this definition">¶</a></dt>
<dd><p>Check if the given string is (syntactically) a valid hostname.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>hostname</strong> &#8211; a string to check</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a pair containing boolean value (valid or invalid) and
an error message (if applicable)</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">(bool, str)</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.setOnboot">
<code class="descclassname">pyanaconda.network.</code><code class="descname">setOnboot</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.setOnboot" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.set_hostname">
<code class="descclassname">pyanaconda.network.</code><code class="descname">set_hostname</code><span class="sig-paren">(</span><em>hn</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.set_hostname" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.setup_ifcfg_log">
<code class="descclassname">pyanaconda.network.</code><code class="descname">setup_ifcfg_log</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.setup_ifcfg_log" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.status_message">
<code class="descclassname">pyanaconda.network.</code><code class="descname">status_message</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.status_message" title="Permalink to this definition">¶</a></dt>
<dd><p>A short string describing which devices are connected.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.update_hostname_data">
<code class="descclassname">pyanaconda.network.</code><code class="descname">update_hostname_data</code><span class="sig-paren">(</span><em>ksdata</em>, <em>hostname</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.update_hostname_data" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.update_onboot_value">
<code class="descclassname">pyanaconda.network.</code><code class="descname">update_onboot_value</code><span class="sig-paren">(</span><em>devname</em>, <em>value</em>, <em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.update_onboot_value" title="Permalink to this definition">¶</a></dt>
<dd><p>Update onboot value in ifcfg files and ksdata</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.update_settings_with_ksdata">
<code class="descclassname">pyanaconda.network.</code><code class="descname">update_settings_with_ksdata</code><span class="sig-paren">(</span><em>devname</em>, <em>networkdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.update_settings_with_ksdata" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.usedByFCoE">
<code class="descclassname">pyanaconda.network.</code><code class="descname">usedByFCoE</code><span class="sig-paren">(</span><em>iface</em>, <em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.usedByFCoE" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.wait_for_connecting_NM_thread">
<code class="descclassname">pyanaconda.network.</code><code class="descname">wait_for_connecting_NM_thread</code><span class="sig-paren">(</span><em>ksdata</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.wait_for_connecting_NM_thread" title="Permalink to this definition">¶</a></dt>
<dd><p>This function is called from a thread which is run at startup
to wait for Network Manager to connect.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.wait_for_connectivity">
<code class="descclassname">pyanaconda.network.</code><code class="descname">wait_for_connectivity</code><span class="sig-paren">(</span><em>timeout=45</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.wait_for_connectivity" title="Permalink to this definition">¶</a></dt>
<dd><p>Wait for network connectivty to become available</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timeout</strong> (<em>integer of float</em>) &#8211; how long to wait in seconds</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.network.wait_for_network_devices">
<code class="descclassname">pyanaconda.network.</code><code class="descname">wait_for_network_devices</code><span class="sig-paren">(</span><em>devices</em>, <em>timeout=45</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.wait_for_network_devices" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.write_hostname">
<code class="descclassname">pyanaconda.network.</code><code class="descname">write_hostname</code><span class="sig-paren">(</span><em>rootpath</em>, <em>ksdata</em>, <em>overwrite=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.write_hostname" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.write_network_config">
<code class="descclassname">pyanaconda.network.</code><code class="descname">write_network_config</code><span class="sig-paren">(</span><em>storage</em>, <em>ksdata</em>, <em>instClass</em>, <em>rootpath</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.write_network_config" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.network.write_sysconfig_network">
<code class="descclassname">pyanaconda.network.</code><code class="descname">write_sysconfig_network</code><span class="sig-paren">(</span><em>rootpath</em>, <em>overwrite=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.network.write_sysconfig_network" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.nm">
<span id="pyanaconda-nm-module"></span><h2>pyanaconda.nm module<a class="headerlink" href="#module-pyanaconda.nm" title="Permalink to this headline">¶</a></h2>
<dl class="exception">
<dt id="pyanaconda.nm.AddConnectionError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">AddConnectionError</code><a class="headerlink" href="#pyanaconda.nm.AddConnectionError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Connection is not available for the device</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.BondOptionsError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">BondOptionsError</code><a class="headerlink" href="#pyanaconda.nm.BondOptionsError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.nm.AddConnectionError" title="pyanaconda.nm.AddConnectionError"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.nm.AddConnectionError</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.DeviceNotActiveError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">DeviceNotActiveError</code><a class="headerlink" href="#pyanaconda.nm.DeviceNotActiveError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Device of specified name is not active</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.PropertyNotFoundError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">PropertyNotFoundError</code><a class="headerlink" href="#pyanaconda.nm.PropertyNotFoundError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#ValueError" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">ValueError</span></code></a></p>
<p>Property of NM object was not found</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.SettingsNotFoundError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">SettingsNotFoundError</code><a class="headerlink" href="#pyanaconda.nm.SettingsNotFoundError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#ValueError" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">ValueError</span></code></a></p>
<p>Settings NMRemoteConnection object was not found</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.UnknownConnectionError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">UnknownConnectionError</code><a class="headerlink" href="#pyanaconda.nm.UnknownConnectionError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Connection is not available for the device</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.UnknownDeviceError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">UnknownDeviceError</code><a class="headerlink" href="#pyanaconda.nm.UnknownDeviceError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#ValueError" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">ValueError</span></code></a></p>
<p>Device of specified name was not found by NM</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.UnknownMethodGetError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">UnknownMethodGetError</code><a class="headerlink" href="#pyanaconda.nm.UnknownMethodGetError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Object does not have Get, most probably being invalid</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.nm.UnmanagedDeviceError">
<em class="property">exception </em><code class="descclassname">pyanaconda.nm.</code><code class="descname">UnmanagedDeviceError</code><a class="headerlink" href="#pyanaconda.nm.UnmanagedDeviceError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Device of specified name is not managed by NM or unavailable</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_activate_device_connection">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_activate_device_connection</code><span class="sig-paren">(</span><em>dev_name</em>, <em>con_uuid</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_activate_device_connection" title="Permalink to this definition">¶</a></dt>
<dd><p>Activate device with specified connection.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>dev_name</strong> (<em>str or None</em>) &#8211; name of device or None for virtual devices</li>
<li><strong>con_uuid</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; uuid of connection to be activated on device</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>UnmanagedDeviceError</strong> &#8211; if device is not managed by NM
or unavailable</li>
<li><strong>SettingsNotFoundError</strong> &#8211; if conneciton with given uuid was not found</li>
<li><strong>UnknownConnectionError</strong> &#8211; if connection is not available for the device</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_activated_devices">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_activated_devices</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_activated_devices" title="Permalink to this definition">¶</a></dt>
<dd><p>Return names of activated network devices.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">names of activated network devices</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_add_connection">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_add_connection</code><span class="sig-paren">(</span><em>values</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_add_connection" title="Permalink to this definition">¶</a></dt>
<dd><p>Add new connection specified by values.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>values</strong> &#8211; <div class="line-block">
<div class="line">list of settings with new values and its types</div>
<div class="line">[[key1, key2, value, type_str], ...]</div>
<div class="line">key1: first-level key of setting (eg &#8220;connection&#8221;)</div>
<div class="line">key2: second-level key of setting (eg &#8220;uuid&#8221;)</div>
<div class="line">value: new value</div>
<div class="line">type_str: dbus type of new value (eg &#8220;ay&#8221;)</div>
</div>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_dbus_ay_to_ipv6">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_dbus_ay_to_ipv6</code><span class="sig-paren">(</span><em>bytelist</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_dbus_ay_to_ipv6" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert ipv6 address from list of bytes (dbus &#8216;ay&#8217;) to string.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>address</strong> (<em>list of bytes - dbus &#8216;ay&#8217;</em>) &#8211; IPv6 address as list of bytes returned by dbus (&#8216;ay&#8217;)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">IPv6 address</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_dbus_int_to_ipv4">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_dbus_int_to_ipv4</code><span class="sig-paren">(</span><em>address</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_dbus_int_to_ipv4" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert ipv4 address from dus int &#8216;u&#8217; (switched endianess) to string.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>address</strong> (<em>integer - dbus &#8216;u&#8217;</em>) &#8211; IPv4 address as integer returned by dbus (&#8216;u&#8217;)</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">IPv6 address</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_active_con_uuid">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_active_con_uuid</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_active_con_uuid" title="Permalink to this definition">¶</a></dt>
<dd><p>Return uuid of device&#8217;s active connection</p>
<p>Exceptions:
UnknownDeviceError if device is not found</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_active_ssid">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_active_ssid</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_active_ssid" title="Permalink to this definition">¶</a></dt>
<dd><p>Return ssid of device&#8217;s active access point.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">ssid of active access point, <code class="docutils literal"><span class="pre">None</span></code> if device has no active AP</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises UnknownDeviceError:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if device is not found</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_carrier">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_carrier</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_carrier" title="Permalink to this definition">¶</a></dt>
<dd><p>Return whether physical carrier of device is found.
(&#8216;Carrier&#8217; property)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if physical carrier is found, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if &#8216;Carrier&#8217; property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_hwaddress">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_hwaddress</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_hwaddress" title="Permalink to this definition">¶</a></dt>
<dd><p>Return active hardware address of device (&#8216;HwAddress&#8217; property)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">active hardware address of device (&#8216;HwAddress&#8217; property)</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if &#8216;HwAddress&#8217; property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_ip_addresses">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_ip_addresses</code><span class="sig-paren">(</span><em>name</em>, <em>version=4</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_ip_addresses" title="Permalink to this definition">¶</a></dt>
<dd><p>Return IP addresses of device in ACTIVATED state.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</li>
<li><strong>version</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; version of IP protocol (value 4 or 6)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">IP addresses of device, empty list if device is not
in ACTIVATED state</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">list of strings</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if IP configuration is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_ip_config">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_ip_config</code><span class="sig-paren">(</span><em>name</em>, <em>version=4</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_ip_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Return IP configurations of device in ACTIVATED state.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</li>
<li><strong>version</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; version of IP protocol (value 4 or 6)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">IP configuration of device, empty list if device is not
in ACTIVATED state</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><div class="line-block">
<div class="line">[[[address1, prefix1, gateway1], [address2, prefix2, gateway2], ...],</div>
<div class="line">[nameserver1, nameserver2]]</div>
<div class="line">addressX, gatewayX: string</div>
<div class="line">prefixX: int</div>
</div>
</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if ip configuration is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_is_slave">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_is_slave</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_is_slave" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the device a slave?</p>
<p>Exceptions:
UnknownDeviceError if device is not found</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_perm_hwaddress">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_perm_hwaddress</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_perm_hwaddress" title="Permalink to this definition">¶</a></dt>
<dd><p>Return active hardware address of device (&#8216;PermHwAddress&#8217; property)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">active hardware address of device (&#8216;PermHwAddress&#8217; property)</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if &#8216;PermHwAddress&#8217; property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_property">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_property</code><span class="sig-paren">(</span><em>name</em>, <em>prop</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_property" title="Permalink to this definition">¶</a></dt>
<dd><p>Return value of device NM property</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</li>
<li><strong>prop</strong> &#8211; property</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">value of device&#8217;s property</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">unpacked GDBus value</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_setting_value">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_setting_value</code><span class="sig-paren">(</span><em>name</em>, <em>key1</em>, <em>key2</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_setting_value" title="Permalink to this definition">¶</a></dt>
<dd><p>Return value of device&#8217;s setting specified by key1 and key2.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</li>
<li><strong>key1</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; first-level key of setting (eg &#8220;connection&#8221;)</li>
<li><strong>key2</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; second-level key of setting (eg &#8220;uuid&#8221;)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">value of setting or None if the setting was not found
which means it does not exist or default value is used
by NM</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">unpacked GDBus variant or None</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>SettingsNotFoundError</strong> &#8211; if settings were not found
(eg for &#8220;wlan0&#8221;)</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_slaves">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_slaves</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_slaves" title="Permalink to this definition">¶</a></dt>
<dd><p>Return slaves of device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">names of slaves of device or None if device has no &#8216;Slaves&#8217; property</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of strings or None</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises UnknownDeviceError:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body">if device is not found</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type" title="Permalink to this definition">¶</a></dt>
<dd><p>Return device&#8217;s type (&#8216;DeviceType&#8217; property).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">device type</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">integer</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if &#8216;DeviceType&#8217; property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_bond">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_bond</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_bond" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device bond?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if type of device is BOND, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_bridge">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_bridge</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_bridge" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device bridge?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if type of device is BRIDGE, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_ethernet">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_ethernet</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_ethernet" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device ethernet?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if type of device is ETHERNET, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_infiniband">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_infiniband</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_infiniband" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device infiniband?</p>
<p>Exceptions:
UnknownDeviceError if device is not found
PropertyNotFoundError if type is not found</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_team">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_team</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_team" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device team?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if type of device is TEAM, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_vlan">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_vlan</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_vlan" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device vlan?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if type of device is VLAN, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_type_is_wifi">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_type_is_wifi</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_type_is_wifi" title="Permalink to this definition">¶</a></dt>
<dd><p>Is the type of device wifi?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if type of device is WIFI, False otherwise</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_device_valid_hwaddress">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_device_valid_hwaddress</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_device_valid_hwaddress" title="Permalink to this definition">¶</a></dt>
<dd><p>Return valid hardware address of device depending on type of the device
(&#8216;PermHwAddress&#8217; property for wired and wireless or &#8216;HwAddress&#8217; property for others)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><p class="first"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">active hardware address of device
(&#8216;HwAddress&#8217; or &#8216;PermHwAddress&#8217; property)</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>PropertyNotFoundError</strong> &#8211; if property is not found</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_devices">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_devices</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_devices" title="Permalink to this definition">¶</a></dt>
<dd><p>Return names of network devices supported in installer.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">names of network devices supported in installer</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_disconnect_device">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_disconnect_device</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_disconnect_device" title="Permalink to this definition">¶</a></dt>
<dd><p>Disconnect the device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name" colspan="2">Raises UnknownDeviceError:</th></tr>
<tr class="field-odd field"><td>&nbsp;</td><td class="field-body">if device is not found</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_get_all_settings">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_get_all_settings</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_get_all_settings" title="Permalink to this definition">¶</a></dt>
<dd><p>Return all settings for logging.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_get_settings">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_get_settings</code><span class="sig-paren">(</span><em>value</em>, <em>key1</em>, <em>key2</em>, <em>format_value=&lt;function &lt;lambda&gt;&gt;</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_get_settings" title="Permalink to this definition">¶</a></dt>
<dd><p>Return settings having given value of key1, key2 setting</p>
<p>Returns list of settings(dicts) , None if settings were not found.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_hwaddr_to_device_name">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_hwaddr_to_device_name</code><span class="sig-paren">(</span><em>hwaddr</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_hwaddr_to_device_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Return device name of interface with given hardware address.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>hwaddr</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; hardware address</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">device name of interface having hwaddr</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_ipv4_to_dbus_int">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_ipv4_to_dbus_int</code><span class="sig-paren">(</span><em>address</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_ipv4_to_dbus_int" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert ipv4 address from string to int for dbus (switched endianess).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>address</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; IPv4 address</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">IPv4 address as an integer &#8216;u&#8217; for NM dbus setting</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">integer</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_ipv6_to_dbus_ay">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_ipv6_to_dbus_ay</code><span class="sig-paren">(</span><em>address</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_ipv6_to_dbus_ay" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert ipv6 address from string to list of bytes &#8216;ay&#8217; for dbus</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>address</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; IPv6 address</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">address in format &#8216;ay&#8217; for NM dbus setting</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">list of bytes</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_is_connected">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_is_connected</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_is_connected" title="Permalink to this definition">¶</a></dt>
<dd><p>Is NetworkManager connected?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">True if NM is connected, False otherwise.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_is_connecting">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_is_connecting</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_is_connecting" title="Permalink to this definition">¶</a></dt>
<dd><p>Is NetworkManager connecting?</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">True if NM is in CONNECTING state, False otherwise.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_ntp_servers_from_dhcp">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_ntp_servers_from_dhcp</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_ntp_servers_from_dhcp" title="Permalink to this definition">¶</a></dt>
<dd><p>Return NTP servers obtained by DHCP.</p>
<p>return: NTP servers obtained by DHCP
rtype: list of str</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_state">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_state</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_state" title="Permalink to this definition">¶</a></dt>
<dd><p>Return state of NetworkManager</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">state of NetworkManager</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">integer</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.nm_update_settings_of_device">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">nm_update_settings_of_device</code><span class="sig-paren">(</span><em>name</em>, <em>new_values</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.nm_update_settings_of_device" title="Permalink to this definition">¶</a></dt>
<dd><p>Update setting of device.</p>
<p>The type of value is determined from existing settings of device.
If setting for key1, key2 does not exist, default_type_str is used or
if <code class="docutils literal"><span class="pre">None</span></code>, the type is inferred from the value supplied (string and bool only).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of device</li>
<li><strong>new_values</strong> &#8211; <div class="line-block">
<div class="line">list of settings with new values and its types</div>
<div class="line">[[key1, key2, value, default_type_str]]</div>
<div class="line">key1: first-level key of setting (eg &#8220;connection&#8221;)</div>
<div class="line">key2: second-level key of setting (eg &#8220;uuid&#8221;)</div>
<div class="line">value: new value</div>
<div class="line">default_type_str:</div>
</div>
<blockquote>
<div>dbus type of new value to be used
if the setting does not already exist;
if <code class="docutils literal"><span class="pre">None</span></code>, the type is inferred from
value (string and bool only)</div></blockquote>
</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>UnknownDeviceError</strong> &#8211; if device is not found</li>
<li><strong>SettingsNotFoundError</strong> &#8211; if settings were not found
(eg for &#8220;wlan0&#8221;)</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.nm.test">
<code class="descclassname">pyanaconda.nm.</code><code class="descname">test</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.nm.test" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.ntp">
<span id="pyanaconda-ntp-module"></span><h2>pyanaconda.ntp module<a class="headerlink" href="#module-pyanaconda.ntp" title="Permalink to this headline">¶</a></h2>
<p>Module facilitating the work with NTP servers and NTP daemon&#8217;s configuration</p>
<dl class="exception">
<dt id="pyanaconda.ntp.NTPconfigError">
<em class="property">exception </em><code class="descclassname">pyanaconda.ntp.</code><code class="descname">NTPconfigError</code><a class="headerlink" href="#pyanaconda.ntp.NTPconfigError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Exception class for NTP related problems</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.get_servers_from_config">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">get_servers_from_config</code><span class="sig-paren">(</span><em>conf_file_path='/etc/chrony.conf'</em>, <em>srv_regexp=re.compile('^\\s*(server|pool)\\s*([-a-zA-Z.0-9]+)\\s*[a-zA-Z]+\\s*$')</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.get_servers_from_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Goes through the chronyd&#8217;s configuration file looking for lines starting
with &#8216;server&#8217;.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">servers found in the chronyd&#8217;s configuration</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#list" title="(in Python v3.5)">list</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.internal_to_pools_and_servers">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">internal_to_pools_and_servers</code><span class="sig-paren">(</span><em>pools_servers</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.internal_to_pools_and_servers" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.ntp_server_working">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">ntp_server_working</code><span class="sig-paren">(</span><em>server</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.ntp_server_working" title="Permalink to this definition">¶</a></dt>
<dd><p>Tries to do an NTP request to the $server (timeout may take some time).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>server</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; hostname or IP address of an NTP server</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">True if the given server is reachable and working, False otherwise</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.one_time_sync">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">one_time_sync</code><span class="sig-paren">(</span><em>server</em>, <em>callback=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.one_time_sync" title="Permalink to this definition">¶</a></dt>
<dd><p>Synchronize the system time with a given NTP server. Note that this
function is blocking and will not return until the time gets synced or
querying server fails (may take some time before timeouting).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>server</strong> &#8211; NTP server</li>
<li><strong>callback</strong> (<em>a function taking one boolean argument (success)</em>) &#8211; callback function to run after sync or failure</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">True if the sync was successful, False otherwise</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.one_time_sync_async">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">one_time_sync_async</code><span class="sig-paren">(</span><em>server</em>, <em>callback=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.one_time_sync_async" title="Permalink to this definition">¶</a></dt>
<dd><p>Asynchronously synchronize the system time with a given NTP server. This
function is non-blocking it starts a new thread for synchronization and
returns. Use callback argument to specify the function called when the
new thread finishes if needed.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>server</strong> &#8211; NTP server</li>
<li><strong>callback</strong> (<em>a function taking one boolean argument (success)</em>) &#8211; callback function to run after sync or failure</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.pools_servers_to_internal">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">pools_servers_to_internal</code><span class="sig-paren">(</span><em>pools</em>, <em>servers</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.pools_servers_to_internal" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.ntp.save_servers_to_config">
<code class="descclassname">pyanaconda.ntp.</code><code class="descname">save_servers_to_config</code><span class="sig-paren">(</span><em>pools</em>, <em>servers</em>, <em>conf_file_path='/etc/chrony.conf'</em>, <em>srv_regexp=re.compile('^\\s*(server|pool)\\s*([-a-zA-Z.0-9]+)\\s*[a-zA-Z]+\\s*$')</em>, <em>out_file_path=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.ntp.save_servers_to_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Replaces the pools and servers defined in the chronyd&#8217;s configuration file
with the given ones. If the out_file is not None, then it is used for the
resulting config.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>out_file_path</strong> &#8211; path to the file used for the resulting config</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.product">
<span id="pyanaconda-product-module"></span><h2>pyanaconda.product module<a class="headerlink" href="#module-pyanaconda.product" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.product.distributionText">
<code class="descclassname">pyanaconda.product.</code><code class="descname">distributionText</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.product.distributionText" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.product.translated_new_install_name">
<code class="descclassname">pyanaconda.product.</code><code class="descname">translated_new_install_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.product.translated_new_install_name" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.progress">
<span id="pyanaconda-progress-module"></span><h2>pyanaconda.progress module<a class="headerlink" href="#module-pyanaconda.progress" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.progress.progress_complete">
<code class="descclassname">pyanaconda.progress.</code><code class="descname">progress_complete</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.progress.progress_complete" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.progress.progress_init">
<code class="descclassname">pyanaconda.progress.</code><code class="descname">progress_init</code><span class="sig-paren">(</span><em>steps</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.progress.progress_init" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.progress.progress_message">
<code class="descclassname">pyanaconda.progress.</code><code class="descname">progress_message</code><span class="sig-paren">(</span><em>message</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.progress.progress_message" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.progress.progress_report">
<code class="descclassname">pyanaconda.progress.</code><code class="descname">progress_report</code><span class="sig-paren">(</span><em>message</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.progress.progress_report" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.progress.progress_step">
<code class="descclassname">pyanaconda.progress.</code><code class="descname">progress_step</code><span class="sig-paren">(</span><em>message</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.progress.progress_step" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.pwpolicy">
<span id="pyanaconda-pwpolicy-module"></span><h2>pyanaconda.pwpolicy module<a class="headerlink" href="#module-pyanaconda.pwpolicy" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.pwpolicy.F22_PwPolicy">
<em class="property">class </em><code class="descclassname">pyanaconda.pwpolicy.</code><code class="descname">F22_PwPolicy</code><span class="sig-paren">(</span><em>writePriority=0</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicy" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.base.KickstartCommand</span></code></p>
<p>Kickstart command implementing password policy.</p>
<dl class="method">
<dt id="pyanaconda.pwpolicy.F22_PwPolicy.dataList">
<code class="descname">dataList</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicy.dataList" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.pwpolicy.F22_PwPolicy.get_policy">
<code class="descname">get_policy</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicy.get_policy" title="Permalink to this definition">¶</a></dt>
<dd><p>Get the policy by name</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; Name of the policy to return.</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.pwpolicy.F22_PwPolicy.parse">
<code class="descname">parse</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicy.parse" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.pwpolicy.F22_PwPolicy.removedAttrs">
<code class="descname">removedAttrs</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicy.removedAttrs" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.pwpolicy.F22_PwPolicy.removedKeywords">
<code class="descname">removedKeywords</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicy.removedKeywords" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.pwpolicy.F22_PwPolicyData">
<em class="property">class </em><code class="descclassname">pyanaconda.pwpolicy.</code><code class="descname">F22_PwPolicyData</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicyData" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">pykickstart.base.BaseData</span></code></p>
<p>Kickstart Data object to hold information about pwpolicy.</p>
<dl class="attribute">
<dt id="pyanaconda.pwpolicy.F22_PwPolicyData.removedAttrs">
<code class="descname">removedAttrs</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicyData.removedAttrs" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.pwpolicy.F22_PwPolicyData.removedKeywords">
<code class="descname">removedKeywords</code><em class="property"> = []</em><a class="headerlink" href="#pyanaconda.pwpolicy.F22_PwPolicyData.removedKeywords" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

</div>
<div class="section" id="module-pyanaconda.queuefactory">
<span id="pyanaconda-queuefactory-module"></span><h2>pyanaconda.queuefactory module<a class="headerlink" href="#module-pyanaconda.queuefactory" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.queuefactory.QueueFactory">
<em class="property">class </em><code class="descclassname">pyanaconda.queuefactory.</code><code class="descname">QueueFactory</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.queuefactory.QueueFactory" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Constructs a new object wrapping a Queue.Queue, complete with constants
and sending functions for each type of message that can be put into the
queue.</p>
<p>Creating a new object using this class is done like so:</p>
<blockquote>
<div>q = QueueFactory(&#8220;progress&#8221;)</div></blockquote>
<p>And then adding messages to it is done like so:</p>
<blockquote>
<div>q.addMessage(&#8220;init&#8221;, 0)
q.addMessage(&#8220;step&#8221;, 1)</div></blockquote>
<p>The first call will create a new constant named PROGRESS_CODE_INIT and a
method named send_init that takes zero arguments.  The second call will
create a new constant named PROGRESS_CODE_STEP and a method named send_step
that takes one argument.</p>
<p>Reusing names within the same class is not allowed.</p>
<dl class="method">
<dt id="pyanaconda.queuefactory.QueueFactory.addMessage">
<code class="descname">addMessage</code><span class="sig-paren">(</span><em>name</em>, <em>argc</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.queuefactory.QueueFactory.addMessage" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

</div>
<div class="section" id="module-pyanaconda.regexes">
<span id="pyanaconda-regexes-module"></span><h2>pyanaconda.regexes module<a class="headerlink" href="#module-pyanaconda.regexes" title="Permalink to this headline">¶</a></h2>
</div>
<div class="section" id="module-pyanaconda.rescue">
<span id="pyanaconda-rescue-module"></span><h2>pyanaconda.rescue module<a class="headerlink" href="#module-pyanaconda.rescue" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.rescue.RescueMode">
<em class="property">class </em><code class="descclassname">pyanaconda.rescue.</code><code class="descname">RescueMode</code><span class="sig-paren">(</span><em>app</em>, <em>data</em>, <em>storage=None</em>, <em>payload=None</em>, <em>instclass=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMode" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="pyanaconda.ui.tui.spokes.html#pyanaconda.ui.tui.spokes.NormalTUISpoke" title="pyanaconda.ui.tui.spokes.NormalTUISpoke"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.ui.tui.spokes.NormalTUISpoke</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.rescue.RescueMode.apply">
<code class="descname">apply</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMode.apply" title="Permalink to this definition">¶</a></dt>
<dd><p>Move along home.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMode.initialize">
<code class="descname">initialize</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMode.initialize" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMode.input">
<code class="descname">input</code><span class="sig-paren">(</span><em>args</em>, <em>key</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMode.input" title="Permalink to this definition">¶</a></dt>
<dd><p>Override any input so we can launch rescue mode.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMode.prompt">
<code class="descname">prompt</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMode.prompt" title="Permalink to this definition">¶</a></dt>
<dd><p>Override the default TUI prompt.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMode.refresh">
<code class="descname">refresh</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMode.refresh" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.rescue.RescueMode.title">
<code class="descname">title</code><em class="property"> = 'Rescue'</em><a class="headerlink" href="#pyanaconda.rescue.RescueMode.title" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.rescue.RootSpoke">
<em class="property">class </em><code class="descclassname">pyanaconda.rescue.</code><code class="descname">RootSpoke</code><span class="sig-paren">(</span><em>app</em>, <em>data</em>, <em>storage</em>, <em>payload</em>, <em>instclass</em>, <em>roots</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RootSpoke" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="pyanaconda.ui.tui.spokes.html#pyanaconda.ui.tui.spokes.NormalTUISpoke" title="pyanaconda.ui.tui.spokes.NormalTUISpoke"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.ui.tui.spokes.NormalTUISpoke</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.rescue.RootSpoke.apply">
<code class="descname">apply</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.apply" title="Permalink to this definition">¶</a></dt>
<dd><p>Apply our selection.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.rescue.RootSpoke.indirect">
<code class="descname">indirect</code><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.indirect" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RootSpoke.input">
<code class="descname">input</code><span class="sig-paren">(</span><em>args</em>, <em>key</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.input" title="Permalink to this definition">¶</a></dt>
<dd><p>Move along home.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RootSpoke.prompt">
<code class="descname">prompt</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.prompt" title="Permalink to this definition">¶</a></dt>
<dd><p>Override the default TUI prompt.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RootSpoke.refresh">
<code class="descname">refresh</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.refresh" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.rescue.RootSpoke.root">
<code class="descname">root</code><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.root" title="Permalink to this definition">¶</a></dt>
<dd><p>The selected root fs to mount.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.rescue.RootSpoke.title">
<code class="descname">title</code><em class="property"> = 'Root Selection'</em><a class="headerlink" href="#pyanaconda.rescue.RootSpoke.title" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.rescue.RescueMountSpoke">
<em class="property">class </em><code class="descclassname">pyanaconda.rescue.</code><code class="descname">RescueMountSpoke</code><span class="sig-paren">(</span><em>app</em>, <em>data</em>, <em>storage</em>, <em>payload</em>, <em>instclass</em>, <em>selection</em>, <em>root</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="pyanaconda.ui.tui.spokes.html#pyanaconda.ui.tui.spokes.NormalTUISpoke" title="pyanaconda.ui.tui.spokes.NormalTUISpoke"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.ui.tui.spokes.NormalTUISpoke</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.rescue.RescueMountSpoke.apply">
<code class="descname">apply</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke.apply" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.rescue.RescueMountSpoke.indirect">
<code class="descname">indirect</code><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke.indirect" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMountSpoke.input">
<code class="descname">input</code><span class="sig-paren">(</span><em>args</em>, <em>key</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke.input" title="Permalink to this definition">¶</a></dt>
<dd><p>Move along home.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMountSpoke.prompt">
<code class="descname">prompt</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke.prompt" title="Permalink to this definition">¶</a></dt>
<dd><p>Override the default TUI prompt.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.rescue.RescueMountSpoke.refresh">
<code class="descname">refresh</code><span class="sig-paren">(</span><em>args=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke.refresh" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="attribute">
<dt id="pyanaconda.rescue.RescueMountSpoke.title">
<code class="descname">title</code><em class="property"> = 'Rescue Mount'</em><a class="headerlink" href="#pyanaconda.rescue.RescueMountSpoke.title" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

</div>
<div class="section" id="module-pyanaconda.safe_dbus">
<span id="pyanaconda-safe-dbus-module"></span><h2>pyanaconda.safe_dbus module<a class="headerlink" href="#module-pyanaconda.safe_dbus" title="Permalink to this headline">¶</a></h2>
<p>Module providing thread-safe and mainloop-safe DBus operations.</p>
<dl class="exception">
<dt id="pyanaconda.safe_dbus.DBusCallError">
<em class="property">exception </em><code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">DBusCallError</code><a class="headerlink" href="#pyanaconda.safe_dbus.DBusCallError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.safe_dbus.SafeDBusError" title="pyanaconda.safe_dbus.SafeDBusError"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.safe_dbus.SafeDBusError</span></code></a></p>
<p>Class for the errors related to calling methods over DBus.</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.safe_dbus.DBusPropertyError">
<em class="property">exception </em><code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">DBusPropertyError</code><a class="headerlink" href="#pyanaconda.safe_dbus.DBusPropertyError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.safe_dbus.DBusCallError" title="pyanaconda.safe_dbus.DBusCallError"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.safe_dbus.DBusCallError</span></code></a></p>
<p>Class for the errors related to getting property values over DBus.</p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.safe_dbus.SafeDBusError">
<em class="property">exception </em><code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">SafeDBusError</code><a class="headerlink" href="#pyanaconda.safe_dbus.SafeDBusError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Class for exceptions defined in this module.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.safe_dbus.call_sync">
<code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">call_sync</code><span class="sig-paren">(</span><em>service</em>, <em>obj_path</em>, <em>iface</em>, <em>method</em>, <em>args</em>, <em>connection=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.safe_dbus.call_sync" title="Permalink to this definition">¶</a></dt>
<dd><p>Safely call a given method on a given object of a given service over DBus
passing given arguments. If a connection is given, it is used, otherwise a
new connection is established. Safely means that it is a synchronous,
thread-safe call not using any main loop.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>service</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; DBus service to use</li>
<li><strong>obj_path</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; object path of the object to call method on</li>
<li><strong>iface</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; interface to use</li>
<li><strong>method</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of the method to call</li>
<li><strong>args</strong> (<em>GVariant</em>) &#8211; arguments to pass to the method</li>
<li><strong>connection</strong> (<em>Gio.DBusConnection</em>) &#8211; connection to use (if None, a new connection is
established)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">unpacked value returned by the method</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">tuple with elements that depend on the method</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises DBusCallError:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body"><p class="first last">if some DBus related error appears</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.safe_dbus.get_new_session_connection">
<code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">get_new_session_connection</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.safe_dbus.get_new_session_connection" title="Permalink to this definition">¶</a></dt>
<dd><p>Get a connection handle for the per-user-login-session message bus.</p>
<p>!!! RUN THIS EARLY !!! like, before any other threads start. Connections to
the session bus must be made with the effective UID of the login user,
which in live installs is not the UID of anaconda. This means we need to
call seteuid in this method, and doing that after threads have started will
probably do something weird.</p>
<p>Live installs use consolehelper to run as root, which sets the original
UID in $USERHELPER_UID.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">the session connection handle</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">Gio.DBusConnection</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>DBusCallError</strong> &#8211; if some DBus related error appears</li>
<li><a class="reference external" href="https://docs.python.org/3/library/exceptions.html#OSError" title="(in Python v3.5)"><strong>OSError</strong></a> &#8211; if unable to set the effective UID</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.safe_dbus.get_new_system_connection">
<code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">get_new_system_connection</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.safe_dbus.get_new_system_connection" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a new connection to the system bus.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.safe_dbus.get_property_sync">
<code class="descclassname">pyanaconda.safe_dbus.</code><code class="descname">get_property_sync</code><span class="sig-paren">(</span><em>service</em>, <em>obj_path</em>, <em>iface</em>, <em>prop_name</em>, <em>connection=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.safe_dbus.get_property_sync" title="Permalink to this definition">¶</a></dt>
<dd><p>Get value of a given property of a given object provided by a given service.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>service</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; DBus service to use</li>
<li><strong>obj_path</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; object path</li>
<li><strong>iface</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; interface to use</li>
<li><strong>prop_name</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; name of the property</li>
<li><strong>connection</strong> (<em>Gio.DBusConnection</em>) &#8211; connection to use (if None, a new connection is
established)</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">unpacked value of the property</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">tuple with elements that depend on the type of the property</p>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><ul class="first last simple">
<li><strong>DBusCallError</strong> &#8211; when the internal dbus_call_safe_sync invocation
raises an exception</li>
<li><strong>DBusPropertyError</strong> &#8211; when the given object doesn&#8217;t have the given
property</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.screensaver">
<span id="pyanaconda-screensaver-module"></span><h2>pyanaconda.screensaver module<a class="headerlink" href="#module-pyanaconda.screensaver" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.screensaver.inhibit_screensaver">
<code class="descclassname">pyanaconda.screensaver.</code><code class="descname">inhibit_screensaver</code><span class="sig-paren">(</span><em>connection</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.screensaver.inhibit_screensaver" title="Permalink to this definition">¶</a></dt>
<dd><p>Inhibit the screensaver idle timer.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>connection</strong> (<em>Gio.DBusConnection</em>) &#8211; A handle for the session message bus</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">The inhibit ID or None</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">int or None</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.screensaver.uninhibit_screensaver">
<code class="descclassname">pyanaconda.screensaver.</code><code class="descname">uninhibit_screensaver</code><span class="sig-paren">(</span><em>connection</em>, <em>inhibit_id</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.screensaver.uninhibit_screensaver" title="Permalink to this definition">¶</a></dt>
<dd><p>Re-enable the screensaver idle timer.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>connection</strong> (<em>Gio.DBusConnection</em>) &#8211; A handle for the session message bus</li>
<li><strong>inhibit_id</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; The ID returned by the inhibit method</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.simpleconfig">
<span id="pyanaconda-simpleconfig-module"></span><h2>pyanaconda.simpleconfig module<a class="headerlink" href="#module-pyanaconda.simpleconfig" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile">
<em class="property">class </em><code class="descclassname">pyanaconda.simpleconfig.</code><code class="descname">SimpleConfigFile</code><span class="sig-paren">(</span><em>filename=None</em>, <em>read_unquote=True</em>, <em>write_quote=True</em>, <em>always_quote=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>Edit values in a configuration file without changing comments.
Supports KEY=VALUE lines and ignores everything else.
Supports adding new keys.
Supports deleting keys.
Preserves comment, blank lines and comments on KEY lines
Does not support duplicate key entries.</p>
<dl class="method">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile.get">
<code class="descname">get</code><span class="sig-paren">(</span><em>key</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile.get" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile.read">
<code class="descname">read</code><span class="sig-paren">(</span><em>filename=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile.read" title="Permalink to this definition">¶</a></dt>
<dd><p>passing filename will override the filename passed to init.</p>
<p>save the lines into self._lines and the key/value pairs into
self.info</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile.reset">
<code class="descname">reset</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile.reset" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile.set">
<code class="descname">set</code><span class="sig-paren">(</span><em>*args</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile.set" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile.unset">
<code class="descname">unset</code><span class="sig-paren">(</span><em>*keys</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile.unset" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.simpleconfig.SimpleConfigFile.write">
<code class="descname">write</code><span class="sig-paren">(</span><em>filename=None</em>, <em>use_tmp=True</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.SimpleConfigFile.write" title="Permalink to this definition">¶</a></dt>
<dd><p>passing filename will override the filename passed to init.</p>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.simpleconfig.find_comment">
<code class="descclassname">pyanaconda.simpleconfig.</code><code class="descname">find_comment</code><span class="sig-paren">(</span><em>s</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.find_comment" title="Permalink to this definition">¶</a></dt>
<dd><p>Look for a # comment outside of a quoted string.
If there are no quotes, find the last # in the string.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>s</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; string to check for comment and quotes</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">index of comment or None</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">int or None</td>
</tr>
</tbody>
</table>
<p>Handles comments inside quotes and quotes inside quotes.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.simpleconfig.quote">
<code class="descclassname">pyanaconda.simpleconfig.</code><code class="descname">quote</code><span class="sig-paren">(</span><em>s</em>, <em>always=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.quote" title="Permalink to this definition">¶</a></dt>
<dd><p>If always is set it returns a quoted value</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.simpleconfig.simple_replace">
<code class="descclassname">pyanaconda.simpleconfig.</code><code class="descname">simple_replace</code><span class="sig-paren">(</span><em>fname</em>, <em>keys</em>, <em>add=True</em>, <em>add_comment='# Added by Anaconda'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.simple_replace" title="Permalink to this definition">¶</a></dt>
<dd><p>Replace lines in a file, optionally adding if missing.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>fname</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; Filename to operate on</li>
<li><strong>keys</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#list" title="(in Python v3.5)"><em>list</em></a>) &#8211; List of (key, string) tuples to search and replace</li>
<li><strong>add</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; When True add strings that were not replaced</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>This will read all the lines in a file, looking for ones that start
with keys and replacing the line with the associated string. The string
should be a COMPLETE replacement for the line, not just a value.</p>
<p>When add is True any keys that haven&#8217;t been found will be appended
to the end of the file along with the add_comment.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.simpleconfig.unquote">
<code class="descclassname">pyanaconda.simpleconfig.</code><code class="descname">unquote</code><span class="sig-paren">(</span><em>s</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.unquote" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.simpleconfig.write_tmpfile">
<code class="descclassname">pyanaconda.simpleconfig.</code><code class="descname">write_tmpfile</code><span class="sig-paren">(</span><em>filename</em>, <em>data</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.simpleconfig.write_tmpfile" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>
<div class="section" id="module-pyanaconda.startup_utils">
<span id="pyanaconda-startup-utils-module"></span><h2>pyanaconda.startup_utils module<a class="headerlink" href="#module-pyanaconda.startup_utils" title="Permalink to this headline">¶</a></h2>
<dl class="function">
<dt id="pyanaconda.startup_utils.get_anaconda_version_string">
<code class="descclassname">pyanaconda.startup_utils.</code><code class="descname">get_anaconda_version_string</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.startup_utils.get_anaconda_version_string" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a string describing current Anaconda version.
If the current version can&#8217;t be determined the string
&#8220;unknown&#8221; will be returned.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">string describing Anaconda version</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)">str</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.startup_utils.module_exists">
<code class="descclassname">pyanaconda.startup_utils.</code><code class="descname">module_exists</code><span class="sig-paren">(</span><em>module_path</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.startup_utils.module_exists" title="Permalink to this definition">¶</a></dt>
<dd><p>Report is a given module exists in the current module import pth or not.
Supports checking bot modules (&#8220;foo&#8221;) os submodules (&#8220;foo.bar.baz&#8221;)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>module_path</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; (sub)module identifier</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">True if (sub)module exists in path, False if not</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.storage_utils">
<span id="pyanaconda-storage-utils-module"></span><h2>pyanaconda.storage_utils module<a class="headerlink" href="#module-pyanaconda.storage_utils" title="Permalink to this headline">¶</a></h2>
<p>UI-independent storage utility functions</p>
<dl class="exception">
<dt id="pyanaconda.storage_utils.LUKSDeviceWithoutKeyError">
<em class="property">exception </em><code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">LUKSDeviceWithoutKeyError</code><a class="headerlink" href="#pyanaconda.storage_utils.LUKSDeviceWithoutKeyError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.storage_utils.SanityError" title="pyanaconda.storage_utils.SanityError"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.storage_utils.SanityError</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.storage_utils.SanityError">
<em class="property">exception </em><code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">SanityError</code><a class="headerlink" href="#pyanaconda.storage_utils.SanityError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.storage_utils.SanityException" title="pyanaconda.storage_utils.SanityException"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.storage_utils.SanityException</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.storage_utils.SanityException">
<em class="property">exception </em><code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">SanityException</code><a class="headerlink" href="#pyanaconda.storage_utils.SanityException" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
</dd></dl>

<dl class="exception">
<dt id="pyanaconda.storage_utils.SanityWarning">
<em class="property">exception </em><code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">SanityWarning</code><a class="headerlink" href="#pyanaconda.storage_utils.SanityWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="#pyanaconda.storage_utils.SanityException" title="pyanaconda.storage_utils.SanityException"><code class="xref py py-class docutils literal"><span class="pre">pyanaconda.storage_utils.SanityException</span></code></a></p>
</dd></dl>

<dl class="class">
<dt id="pyanaconda.storage_utils.StorageSnapshot">
<em class="property">class </em><code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">StorageSnapshot</code><span class="sig-paren">(</span><em>storage=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.StorageSnapshot" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>R/W snapshot of storage (i.e. a <code class="xref py py-class docutils literal"><span class="pre">blivet.Blivet</span></code> instance)</p>
<p>Create new instance of the class</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>storage</strong> (<code class="xref py py-class docutils literal"><span class="pre">blivet.Blivet</span></code>) &#8211; if given, its snapshot is created</td>
</tr>
</tbody>
</table>
<dl class="method">
<dt id="pyanaconda.storage_utils.StorageSnapshot.create_snapshot">
<code class="descname">create_snapshot</code><span class="sig-paren">(</span><em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.StorageSnapshot.create_snapshot" title="Permalink to this definition">¶</a></dt>
<dd><p>Create (and save) snapshot of storage</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.storage_utils.StorageSnapshot.created">
<code class="descname">created</code><a class="headerlink" href="#pyanaconda.storage_utils.StorageSnapshot.created" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.storage_utils.StorageSnapshot.dispose_snapshot">
<code class="descname">dispose_snapshot</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.StorageSnapshot.dispose_snapshot" title="Permalink to this definition">¶</a></dt>
<dd><p>Dispose (unref) the snapshot</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">In order to free the memory taken by the snapshot, all references
returned by <a href="#id1"><span class="problematic" id="id2">:property:`self.storage`</span></a> have to be unrefed too.</p>
</div>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.storage_utils.StorageSnapshot.reset_to_snapshot">
<code class="descname">reset_to_snapshot</code><span class="sig-paren">(</span><em>storage</em>, <em>dispose=False</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.StorageSnapshot.reset_to_snapshot" title="Permalink to this definition">¶</a></dt>
<dd><p>Reset storage to snapshot (<strong>modifies :param:`storage` in place</strong>)</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>storage</strong> &#8211; <code class="xref py py-class docutils literal"><span class="pre">blivet.Blivet</span></code> instance to reset to the created snapshot</li>
<li><strong>dispose</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; whether to dispose the snapshot after reset or not</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name" colspan="2">Raises <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#ValueError" title="(in Python v3.5)">ValueError</a>:</th></tr>
<tr class="field-even field"><td>&nbsp;</td><td class="field-body"><p class="first last">if no snapshot is available (was not created before)</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.storage_utils.StorageSnapshot.storage">
<code class="descname">storage</code><a class="headerlink" href="#pyanaconda.storage_utils.StorageSnapshot.storage" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.storage_utils.UIStorageFilter">
<em class="property">class </em><code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">UIStorageFilter</code><span class="sig-paren">(</span><em>name=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.UIStorageFilter" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/logging.html#logging.Filter" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">logging.Filter</span></code></a></p>
<p>Logging filter for UI storage events</p>
<p>Initialize a filter.</p>
<p>Initialize with the name of the logger which, together with its
children, will have its events allowed through the filter. If no
name is specified, allow every event.</p>
<dl class="method">
<dt id="pyanaconda.storage_utils.UIStorageFilter.filter">
<code class="descname">filter</code><span class="sig-paren">(</span><em>record</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.UIStorageFilter.filter" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.bound_size">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">bound_size</code><span class="sig-paren">(</span><em>size</em>, <em>device</em>, <em>old_size</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.bound_size" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a size bounded by the maximum and minimum size for
the device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>size</strong> (<code class="xref py py-class docutils literal"><span class="pre">blivet.size.Size</span></code>) &#8211; the candidate size</li>
<li><strong>device</strong> (<code class="xref py py-class docutils literal"><span class="pre">blivet.devices.StorageDevice</span></code>) &#8211; the device being displayed</li>
<li><strong>old_size</strong> (<code class="xref py py-class docutils literal"><span class="pre">blivet.size.Size</span></code>) &#8211; the fallback size</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">a size to which to set the device</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><code class="xref py py-class docutils literal"><span class="pre">blivet.size.Size</span></code></p>
</td>
</tr>
</tbody>
</table>
<p>If size is 0, interpreted as set size to maximum possible.
If no maximum size is available, reset size to old_size, but
log a warning.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.check_mounted_partitions">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">check_mounted_partitions</code><span class="sig-paren">(</span><em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.check_mounted_partitions" title="Permalink to this definition">¶</a></dt>
<dd><p>Check the selected disks to make sure all their partitions are unmounted.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">generator of str</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a generator of error messages, may yield no error messages</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.device_type_from_autopart">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">device_type_from_autopart</code><span class="sig-paren">(</span><em>autopart_type</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.device_type_from_autopart" title="Permalink to this definition">¶</a></dt>
<dd><p>Get device type matching the given autopart type.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.sanity_check">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">sanity_check</code><span class="sig-paren">(</span><em>storage</em>, <em>min_ram=320</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.sanity_check" title="Permalink to this definition">¶</a></dt>
<dd><p>Run a series of tests to verify the storage configuration.</p>
<p>This function is called at the end of partitioning so that
we can make sure you don&#8217;t have anything silly (like no /,
a really small /, etc).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>storage</strong> &#8211; an instance of the <code class="xref py py-class docutils literal"><span class="pre">blivet.Blivet</span></code> class to check</li>
<li><strong>min_ram</strong> &#8211; minimum RAM (in MiB) needed for the installation with swap
space available</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">a list of SanityExceptions</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">a list of accumulated errors and warnings</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.size_from_input">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">size_from_input</code><span class="sig-paren">(</span><em>input_str</em>, <em>units=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.size_from_input" title="Permalink to this definition">¶</a></dt>
<dd><p>Get a Size object from an input string.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>input_str</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; a string forming some representation of a size</li>
<li><strong>units</strong> (<em>str or NoneType</em>) &#8211; use these units if none specified in input_str</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">a Size object corresponding to input_str</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><code class="xref py py-class docutils literal"><span class="pre">blivet.size.Size</span></code> or NoneType</p>
</td>
</tr>
</tbody>
</table>
<p>Units default to bytes if no units in input_str or units.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.try_populate_devicetree">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">try_populate_devicetree</code><span class="sig-paren">(</span><em>devicetree</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.try_populate_devicetree" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to populate the given devicetree while catching errors and dealing with
some special ones in a nice way (giving user chance to do something about
them).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>devicetree</strong> &#8211; devicetree to try to populate</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.ui_storage_logger">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">ui_storage_logger</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.ui_storage_logger" title="Permalink to this definition">¶</a></dt>
<dd><p>Context manager that applies the UIStorageFilter for its block</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.storage_utils.verify_LUKS_devices_have_key">
<code class="descclassname">pyanaconda.storage_utils.</code><code class="descname">verify_LUKS_devices_have_key</code><span class="sig-paren">(</span><em>storage</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.storage_utils.verify_LUKS_devices_have_key" title="Permalink to this definition">¶</a></dt>
<dd><p>Verify that all non-existant LUKS devices have some way of obtaining
a key.</p>
<p>Note: LUKS device creation will fail without a key.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">generator of str</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">a generator of error messages, may yield no error messages</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.threads">
<span id="pyanaconda-threads-module"></span><h2>pyanaconda.threads module<a class="headerlink" href="#module-pyanaconda.threads" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.threads.AnacondaThread">
<em class="property">class </em><code class="descclassname">pyanaconda.threads.</code><code class="descname">AnacondaThread</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.AnacondaThread" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/threading.html#threading.Thread" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">threading.Thread</span></code></a></p>
<p>A threading.Thread subclass that exists only for a couple purposes:</p>
<ol class="arabic simple">
<li>Make exceptions that happen in a thread invoke our exception handling
code as well.  Otherwise, threads will silently die and we are doing
a lot of complicated code in them now.</li>
<li>Remove themselves from the thread manager when completed.</li>
<li>All created threads are made daemonic, which means anaconda will quit
when the main process is killed.</li>
</ol>
<dl class="method">
<dt id="pyanaconda.threads.AnacondaThread.run">
<code class="descname">run</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.AnacondaThread.run" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="class">
<dt id="pyanaconda.threads.ThreadManager">
<em class="property">class </em><code class="descclassname">pyanaconda.threads.</code><code class="descname">ThreadManager</code><a class="headerlink" href="#pyanaconda.threads.ThreadManager" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<p>A singleton class for managing threads and processes.</p>
<p>Notes:
THE INSTANCE HAS TO BE CREATED IN THE MAIN THREAD!</p>
<p>This manager makes one assumption that contradicts python&#8217;s
threading module documentation.  In this class, we assume that thread
names are unique and meaningful.  This is an okay assumption for us
to make given that anaconda is only ever going to have a handful of
special purpose threads.</p>
<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.add">
<code class="descname">add</code><span class="sig-paren">(</span><em>obj</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.add" title="Permalink to this definition">¶</a></dt>
<dd><p>Given a Thread or Process object, add it to the list of known objects
and start it.  It is assumed that obj.name is unique and descriptive.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.threads.ThreadManager.any_errors">
<code class="descname">any_errors</code><a class="headerlink" href="#pyanaconda.threads.ThreadManager.any_errors" title="Permalink to this definition">¶</a></dt>
<dd><p>Return True of there have been any errors in any threads</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.exists">
<code class="descname">exists</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.exists" title="Permalink to this definition">¶</a></dt>
<dd><p>Determine if a thread or process exists with the given name.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.get">
<code class="descname">get</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.get" title="Permalink to this definition">¶</a></dt>
<dd><p>Given an object name, see if it exists and return the object.
Return None if no such object exists.  Additionally, this method
will re-raise any uncaught exception in the thread.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.get_error">
<code class="descname">get_error</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.get_error" title="Permalink to this definition">¶</a></dt>
<dd><p>Get the error data for a thread using its name</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.in_main_thread">
<code class="descname">in_main_thread</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.in_main_thread" title="Permalink to this definition">¶</a></dt>
<dd><p>Return True if it is run in the main thread.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.threads.ThreadManager.names">
<code class="descname">names</code><a class="headerlink" href="#pyanaconda.threads.ThreadManager.names" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the names of the running threads.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">list of thread names</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">list of strings</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.raise_if_error">
<code class="descname">raise_if_error</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.raise_if_error" title="Permalink to this definition">¶</a></dt>
<dd><p>If a thread has failed due to an exception, raise it into the main
thread and remove it from errors.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.remove">
<code class="descname">remove</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.remove" title="Permalink to this definition">¶</a></dt>
<dd><p>Removes a thread from the list of known objects.  This should only
be called when a thread exits, or there will be no way to get a
handle on it.</p>
</dd></dl>

<dl class="attribute">
<dt id="pyanaconda.threads.ThreadManager.running">
<code class="descname">running</code><a class="headerlink" href="#pyanaconda.threads.ThreadManager.running" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the number of running threads.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">number of running threads</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)">int</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.set_error">
<code class="descname">set_error</code><span class="sig-paren">(</span><em>name</em>, <em>*exc_info</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.set_error" title="Permalink to this definition">¶</a></dt>
<dd><p>Set the error data for a thread</p>
<p>The exception data is expected to be the tuple from sys.exc_info()</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.wait">
<code class="descname">wait</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.wait" title="Permalink to this definition">¶</a></dt>
<dd><p>Wait for the thread to exit and if the thread exited with an error
re-raise it here.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.wait_all">
<code class="descname">wait_all</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.wait_all" title="Permalink to this definition">¶</a></dt>
<dd><p>Wait for all threads to exit and if there was an error re-raise it.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.threads.ThreadManager.wait_for_error_threads">
<code class="descname">wait_for_error_threads</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.ThreadManager.wait_for_error_threads" title="Permalink to this definition">¶</a></dt>
<dd><p>Waits for all threads that caused exceptions. In other words, waits for
exception handling (possibly interactive) to be finished.</p>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.threads.initThreading">
<code class="descclassname">pyanaconda.threads.</code><code class="descname">initThreading</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.threads.initThreading" title="Permalink to this definition">¶</a></dt>
<dd><p>Set up threading for anaconda&#8217;s use. This method must be called before
any GTK or threading code is called, or else threads will only run when
an event is triggered in the GTK main loop. And IT HAS TO BE CALLED IN
THE MAIN THREAD.</p>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.timezone">
<span id="pyanaconda-timezone-module"></span><h2>pyanaconda.timezone module<a class="headerlink" href="#module-pyanaconda.timezone" title="Permalink to this headline">¶</a></h2>
<p>Module providing functions for getting the list of timezones, writing timezone
configuration, valid timezones recognition etc.</p>
<dl class="exception">
<dt id="pyanaconda.timezone.TimezoneConfigError">
<em class="property">exception </em><code class="descclassname">pyanaconda.timezone.</code><code class="descname">TimezoneConfigError</code><a class="headerlink" href="#pyanaconda.timezone.TimezoneConfigError" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/exceptions.html#Exception" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">Exception</span></code></a></p>
<p>Exception class for timezone configuration related problems</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.get_all_regions_and_timezones">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">get_all_regions_and_timezones</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.get_all_regions_and_timezones" title="Permalink to this definition">¶</a></dt>
<dd><p>Get a dictionary mapping the regions to the list of their timezones.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="#pyanaconda.iutil.ProxyString.dict" title="pyanaconda.iutil.ProxyString.dict">dict</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.get_preferred_timezone">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">get_preferred_timezone</code><span class="sig-paren">(</span><em>territory</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.get_preferred_timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>Get the preferred timezone for a given territory. Note that this function
simply returns the first timezone in the list of timezones for a given
territory.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>territory</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; territory to get preferred timezone for</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">preferred timezone for the given territory or None if no found</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">str or None</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.get_timezone">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">get_timezone</code><span class="sig-paren">(</span><em>timezone</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.get_timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a tzinfo object for a given timezone name.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timezone</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; the timezone name</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/datetime.html#datetime.tzinfo" title="(in Python v3.5)">datetime.tzinfo</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.is_valid_timezone">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">is_valid_timezone</code><span class="sig-paren">(</span><em>timezone</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.is_valid_timezone" title="Permalink to this definition">¶</a></dt>
<dd><p>Check if a given string is an existing timezone.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)">bool</a></td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.save_hw_clock">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">save_hw_clock</code><span class="sig-paren">(</span><em>timezone</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.save_hw_clock" title="Permalink to this definition">¶</a></dt>
<dd><p>Save system time to HW clock.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timezone</strong> &#8211; ksdata.timezone object</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.time_initialize">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">time_initialize</code><span class="sig-paren">(</span><em>timezone</em>, <em>storage</em>, <em>bootloader</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.time_initialize" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to guess if RTC uses UTC time or not, set timezone.isUtc properly and
set system time from RTC using the UTC guess.
Guess is done by searching for bootable ntfs devices.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>timezone</strong> &#8211; ksdata.timezone object</li>
<li><strong>storage</strong> &#8211; blivet.Blivet instance</li>
<li><strong>bootloader</strong> &#8211; bootloader.Bootloader instance</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.timezone.write_timezone_config">
<code class="descclassname">pyanaconda.timezone.</code><code class="descname">write_timezone_config</code><span class="sig-paren">(</span><em>timezone</em>, <em>root</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.timezone.write_timezone_config" title="Permalink to this definition">¶</a></dt>
<dd><p>Write timezone configuration for the system specified by root.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>timezone</strong> &#8211; ksdata.timezone object</li>
<li><strong>root</strong> &#8211; path to the root</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Raise:</th><td class="field-body"><p class="first last">TimezoneConfigError</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.users">
<span id="pyanaconda-users-module"></span><h2>pyanaconda.users module<a class="headerlink" href="#module-pyanaconda.users" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.users.Users">
<em class="property">class </em><code class="descclassname">pyanaconda.users.</code><code class="descname">Users</code><a class="headerlink" href="#pyanaconda.users.Users" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.users.Users.checkUserExists">
<code class="descname">checkUserExists</code><span class="sig-paren">(</span><em>username</em>, <em>root=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.Users.checkUserExists" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.users.Users.createGroup">
<code class="descname">createGroup</code><span class="sig-paren">(</span><em>group_name</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.Users.createGroup" title="Permalink to this definition">¶</a></dt>
<dd><p>Create a new user on the system with the given name.  Optional kwargs:</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>gid</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; The GID for the new user. If none is given, the next available one is used.</li>
<li><strong>root</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The directory of the system to create the new user in.
homedir will be interpreted relative to this. Defaults
to iutil.getSysroot().</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.users.Users.createUser">
<code class="descname">createUser</code><span class="sig-paren">(</span><em>user_name</em>, <em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.Users.createUser" title="Permalink to this definition">¶</a></dt>
<dd><p>Create a new user on the system with the given name.  Optional kwargs:</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>algo</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The password algorithm to use in case isCrypted=True.
If none is given, the cryptPassword default is used.</li>
<li><strong>gecos</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The GECOS information (full name, office, phone, etc.).
Defaults to &#8220;&#8221;.</li>
<li><strong>groups</strong> (<em>list of str</em>) &#8211; A list of group names the user should be added to.
Each group name can contain an optional GID in parenthesis,
such as &#8220;groupName(5000)&#8221;. Defaults to [].</li>
<li><strong>homedir</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The home directory for the new user.  Defaults to
/home/&lt;name&gt;.</li>
<li><strong>isCrypted</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; Is the password kwargs already encrypted?  Defaults
to False.</li>
<li><strong>lock</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.5)"><em>bool</em></a>) &#8211; Is the new account locked by default?  Defaults to
False.</li>
<li><strong>password</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The password.  See isCrypted for how this is interpreted.
If the password is &#8220;&#8221; then the account is created
with a blank password. If None or False the account will
be left in its initial state (locked)</li>
<li><strong>root</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The directory of the system to create the new user
in.  homedir will be interpreted relative to this.
Defaults to iutil.getSysroot().</li>
<li><strong>shell</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.5)"><em>str</em></a>) &#8211; The shell for the new user.  If none is given, the
login.defs default is used.</li>
<li><strong>uid</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; The UID for the new user.  If none is given, the next
available one is used.</li>
<li><strong>gid</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; The GID for the new user.  If none is given, the next
available one is used.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.users.Users.setRootPassword">
<code class="descname">setRootPassword</code><span class="sig-paren">(</span><em>password</em>, <em>isCrypted=False</em>, <em>isLocked=False</em>, <em>algo=None</em>, <em>root='/'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.Users.setRootPassword" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.users.Users.setUserPassword">
<code class="descname">setUserPassword</code><span class="sig-paren">(</span><em>username</em>, <em>password</em>, <em>isCrypted</em>, <em>lock</em>, <em>algo=None</em>, <em>root='/'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.Users.setUserPassword" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.users.Users.setUserSshKey">
<code class="descname">setUserSshKey</code><span class="sig-paren">(</span><em>username</em>, <em>key</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.Users.setUserSshKey" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.users.cryptPassword">
<code class="descclassname">pyanaconda.users.</code><code class="descname">cryptPassword</code><span class="sig-paren">(</span><em>password</em>, <em>algo=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.cryptPassword" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.users.getPassAlgo">
<code class="descclassname">pyanaconda.users.</code><code class="descname">getPassAlgo</code><span class="sig-paren">(</span><em>authconfigStr</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.getPassAlgo" title="Permalink to this definition">¶</a></dt>
<dd><p>Reads the auth string and returns a string indicating our desired
password encoding algorithm.</p>
</dd></dl>

<dl class="function">
<dt id="pyanaconda.users.guess_username">
<code class="descclassname">pyanaconda.users.</code><code class="descname">guess_username</code><span class="sig-paren">(</span><em>fullname</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.guess_username" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="pyanaconda.users.validatePassword">
<code class="descclassname">pyanaconda.users.</code><code class="descname">validatePassword</code><span class="sig-paren">(</span><em>pw</em>, <em>user='root'</em>, <em>settings=None</em>, <em>minlen=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.users.validatePassword" title="Permalink to this definition">¶</a></dt>
<dd><p>Check the quality of a password.</p>
<p>This function does three things: given a password and an optional
username, it will tell if this password can be used at all, how
strong the password is on a scale of 1-100, and, if the password is
unusable, why it is unusuable.</p>
<p>This function uses libpwquality to check the password strength.
pwquality will raise a PWQError on a weak password, which, honestly,
is kind of dumb behavior. A weak password isn&#8217;t exceptional, it&#8217;s what
we&#8217;re asking about! Anyway, this function does not raise PWQError. If
the password fails the PWQSettings conditions, the first member of the
return tuple will be False and the second member of the tuple will be 0.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>pw</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; the password to check</li>
<li><strong>user</strong> (<a class="reference external" href="https://docs.python.org/3/library/string.html#module-string" title="(in Python v3.5)"><em>string</em></a>) &#8211; the username for which the password is being set. If no
username is provided, &#8220;root&#8221; will be used. Use user=None
to disable the username check.</li>
<li><strong>settings</strong> (<em>pwquality.PWQSettings</em>) &#8211; an optional PWQSettings object</li>
<li><strong>minlen</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#int" title="(in Python v3.5)"><em>int</em></a>) &#8211; Minimum acceptable password length. If not passed,
use the default length from PASSWORD_MIN_LEN</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">A tuple containing (bool(valid), int(score), str(message))</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#tuple" title="(in Python v3.5)">tuple</a></p>
</td>
</tr>
</tbody>
</table>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda.vnc">
<span id="pyanaconda-vnc-module"></span><h2>pyanaconda.vnc module<a class="headerlink" href="#module-pyanaconda.vnc" title="Permalink to this headline">¶</a></h2>
<dl class="class">
<dt id="pyanaconda.vnc.VncServer">
<em class="property">class </em><code class="descclassname">pyanaconda.vnc.</code><code class="descname">VncServer</code><span class="sig-paren">(</span><em>root='/'</em>, <em>ip=None</em>, <em>name=None</em>, <em>password=''</em>, <em>vncconnecthost=''</em>, <em>vncconnectport=''</em>, <em>log_file='/tmp/vncserver.log'</em>, <em>pw_file='/tmp/vncpassword'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.5)"><code class="xref py py-class docutils literal"><span class="pre">object</span></code></a></p>
<dl class="method">
<dt id="pyanaconda.vnc.VncServer.VNCListen">
<code class="descname">VNCListen</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.VNCListen" title="Permalink to this definition">¶</a></dt>
<dd><p>Put the server in listening mode.</p>
<p>We dont really have to do anything for the server to listen :)</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.changeVNCPasswdWindow">
<code class="descname">changeVNCPasswdWindow</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.changeVNCPasswdWindow" title="Permalink to this definition">¶</a></dt>
<dd><p>Change the password to a sane parameter.</p>
<p>We ask user to input a password that (len(password) &gt; 6
and len(password) &lt;= 8) or password == &#8216;&#8217;.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.connectToView">
<code class="descname">connectToView</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.connectToView" title="Permalink to this definition">¶</a></dt>
<dd><p>Attempt to connect to self.vncconnecthost</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.initialize">
<code class="descname">initialize</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.initialize" title="Permalink to this definition">¶</a></dt>
<dd><p>Here is were all the relative vars get initialized.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.openlogfile">
<code class="descname">openlogfile</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.openlogfile" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.setVNCPassword">
<code class="descname">setVNCPassword</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.setVNCPassword" title="Permalink to this definition">¶</a></dt>
<dd><p>Set the vnc server password. Output to file.</p>
</dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.startServer">
<code class="descname">startServer</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.startServer" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="method">
<dt id="pyanaconda.vnc.VncServer.startVncConfig">
<code class="descname">startVncConfig</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.VncServer.startVncConfig" title="Permalink to this definition">¶</a></dt>
<dd><p>Attempt to start vncconfig</p>
</dd></dl>

</dd></dl>

<dl class="function">
<dt id="pyanaconda.vnc.shutdownServer">
<code class="descclassname">pyanaconda.vnc.</code><code class="descname">shutdownServer</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pyanaconda.vnc.shutdownServer" title="Permalink to this definition">¶</a></dt>
<dd><p>Try to shutdown any running XVNC server</p>
<p>Why is this function on the module level and not in the VncServer class ?</p>
<p>As the server needs to be killed from the exit handler, it would have
to somehow get to the VncServer instance. Like this, it can just kill
it by calling a function of the vnc module.</p>
</dd></dl>

</div>
<div class="section" id="module-pyanaconda">
<span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-pyanaconda" title="Permalink to this headline">¶</a></h2>
</div>
</div>


           </div>
          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="pyanaconda.installclasses.html" class="btn btn-neutral float-right" title="pyanaconda.installclasses package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="modules.html" class="btn btn-neutral" title="pyanaconda" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright 2015, Red Hat, Inc..

    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  


  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'./',
            VERSION:'25.14',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true
        };
    </script>
      <script type="text/javascript" src="_static/jquery.js"></script>
      <script type="text/javascript" src="_static/underscore.js"></script>
      <script type="text/javascript" src="_static/doctools.js"></script>

  

  
  
    <script type="text/javascript" src="_static/js/theme.js"></script>
  

  
  
  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.StickyNav.enable();
      });
  </script>
   

</body>
</html>